在Java中找到平行四边形的所有可能坐标

2023年 8月 28日 48.4k 0

平行四边形是指具有两对平行边的四边形,其中对边长度相等,对角线度量相等。

In this article we are going to find all possible coordinates of a Parallelogram.

Basically, we will find all the possible coordinates from the given three coordinates to make a parallelogram of a non-zero area. Here the three given coordinates are not fixed points and can change.

因此,如果给出三个坐标,我们可以断言只有这三个坐标可以构建一个平行四边形。

在Java中找到平行四边形的所有可能坐标

As per diagram given above, the opposite sides of a parallelogram are equal in length i.e., AD = BC and AB = CD, we can calculate the coordinates of the missing point (D) as

AD = BC

(Dx - Ax, Dy - Ay) = (Cx - Bx, Cy - By)

Dx = Ax + Cx - Bx

Dy = Ay + Cy - By

让我们开始吧!

展示给你一些实例

Instance-1

假设这三个点是 −

{a1 = 3, a2 = 2}, {b1 = 1, b2 = 0}, {c1 = 4, c2 = 2}

After finding all possible coordinates of a Parallelogram, result will be −

The (x, y) coordinates are −

0, 0

6, 4

2, 0

Instance-2

假设这三个点是 −

{a1 = 7, a2 = 2}, {b1 = 3, b2 = 0}, {c1 =0, c2 = 1}

After finding all possible coordinates of a Parallelogram, result will be −

The (x,y) coordinates are −

10, 1

4, 3

-4, -1

Algorithm

Step 1 − Declare the three coordinates of parallelogram.

Step 2 − Find the other possible coordinates using the formula.

Step 3 − Print the result.

Multiple Approaches

我们以不同的方法提供了解决方案。

  • 通过使用静态输入值

  • 通过用户定义的方法

让我们逐个查看程序及其输出。

方法一:通过使用静态输入值

在这种方法中,我们将把这三个点作为静态输入,并应用公式来打印结果。

Example

public class Main{

// main method
public static void main(String[] args){

//Declare the three coordinates of parallelogram
int a1 = 3, a2 = 2;
int b1 = 1, b2 = 0;
int c1 = 4, c2 = 2;

//find the other possible coordinates and printing it
System.out.println("The (x,y) coordinates are: ");
System.out.println(a1 + b1 - c1 + ", " + (a2 + b2 - c2));
System.out.println(a1 + c1 - b1 + ", " + (a2 + c2 - b2));
System.out.println(c1 + b1 - a1 + ", " + (c2 + b2 - a2));
}
}

登录后复制

Output

The (x,y) coordinates are:
0, 0
6, 4
2, 0

登录后复制

Approach-2: By Using User Defined Method

In this approach, first we will initialise a user defined method and we will take the three points as input and apply the formula to print the result.

Example

public class Main {

// main method
public static void main(String[] s){
//Declare the three coordinates of parallelogram
int a1 = 7, a2 = 2;
int b1 = 3, b2 = 0;
int c1 = 0, c2 = 1;
//calling user defined function
func(a1, a2, b1, b2, c1, c2);
}

//user defined function
static void func(int a1, int a2, int b1, int b2, int c1, int c2){
//find the other possible coordinates and printing it
System.out.println("The (x,y) coordinates are: ");
System.out.println(a1 + b1 - c1 + ", " + (a2 + b2 - c2));
System.out.println(a1 + c1 - b1 + ", " + (a2 + c2 - b2));
System.out.println(c1 + b1 - a1 + ", " + (c2 + b2 - a2));
}
}

登录后复制

Output

The (x,y) coordinates are:
10, 1
4, 3
-4, -1

登录后复制

在这篇文章中,我们探讨了如何通过使用不同的方法在Java中找到平行四边形的所有可能坐标。

以上就是在Java中找到平行四边形的所有可能坐标的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论