>Java >java지도 시간 >Java에서 주어진 두 원이 접하거나 교차하는지 확인하는 방법은 무엇입니까?

Java에서 주어진 두 원이 접하거나 교차하는지 확인하는 방법은 무엇입니까?

WBOY
WBOY앞으로
2023-08-27 14:21:03756검색

Java에서 주어진 두 원이 접하거나 교차하는지 확인하는 방법은 무엇입니까?

원은 주어진 점으로부터의 거리가 일정하도록 평면 위에서 움직이는 점을 추적하여 형성된 닫힌 모양입니다. 이번 글에서는 주어진 두 원이 서로 닿거나 교차하는지 확인해 보겠습니다.

중심 1이 있는 두 개의 원(예: (x1, y1))과 중심 2(예: (x2,y2))가 반지름 R1과 R2인 원 두 개를 얻게 됩니다. 주어진 원이 다른 원과 충돌하는지 확인해야 하므로 가능한 경우는 5가지입니다 -

  • 서클 2는 서클 1 안에 있습니다

  • 원 1은 원 2 안에 있습니다

  • 원 1과 원 2가 교차합니다

  • 원 1과 원 2가 서로 닿아 있습니다

  • 원 1과 원 2는 겹치지 않습니다

이제 위 조건을 확인하기 위해 중심 1과 중심 2 사이의 거리를 구하고 이름을 "d"로 지정하겠습니다.

지금,

  • 1. d

  • 2. d

  • 3. d

  • 4. d == R1 + R2인 경우: 원 1과 원 2가 서로 접촉하고 있습니다

  • 5. 그렇지 않으면 원 1과 원 2가 겹치지 않습니다

"d"는 공식을 사용하여 찾을 수 있습니다 -

$$mathrm{d:=:sqrt((x1:–:x2)^2:+:(y1:–:y2)^2}$$

시작해 보세요!

몇 가지 예를 보여주세요

예 1

  • "d"에 대한 입력은 -

    • 중심 1 = (9, 3), 중심 2 = (11, 1), R1 = 5, R2 = 4.

  • "d"의 값을 찾은 후 결과는 다음과 같습니다.

    • 원 1과 원 2가 교차합니다

예 2

  • "d"에 대한 입력은 -

    • 중심 1 = (5, 8), 중심 2 = (9, 11), R1 = 20, R2 = 40.

  • "d"의 값을 찾은 후 결과는 다음과 같습니다.

    • 원 1은 원 2 안에 있습니다

알고리즘

  • 1단계 - 변수를 선언하고 초기화합니다.

  • Step-2 - 원의 중심 1과 중심 2 사이의 거리를 구합니다.

  • 3단계 - 거리에 대한 5가지 조건을 확인하세요.

  • 4단계 - 결과를 인쇄합니다.

다양한 방법

우리는 다양한 방법으로 솔루션을 제공합니다.

  • 정적 입력 사용

  • 사용자 정의 방법을 사용하여

프로그램과 그 출력을 하나씩 살펴보겠습니다.

방법 1: 정적 입력 사용

이 방법에서는 Radius 1과 Radius 2, Center 1과 Center 2의 값을 할당하여 "d"를 찾습니다. 그런 다음 알고리즘을 기반으로 선이 원 외부에 닿는지, 교차하는지, 아니면 놓여 있는지 알아냅니다.

으아악

출력

으아악

방법 2: 사용자 정의 방법 사용

이 방법에서는 Radius 1과 Radius 2, Center 1과 Center 2의 값을 할당하여 "d"를 찾습니다. 그런 다음 주어진 값을 전달하여 사용자 정의 메소드가 호출되고 알고리즘에 따라 직선이 원 외부에 닿는지, 교차하는지 또는 거짓말하는지 알아냅니다.

으아악

출력

으아악

이 기사에서는 Java 프로그래밍 언어를 사용하여 주어진 두 원이 서로 닿거나 교차하는지 확인하는 다양한 방법을 살펴봅니다.

위 내용은 Java에서 주어진 두 원이 접하거나 교차하는지 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제