Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 等边三角形的中心坐标_Java_Implementation - Fatal编程技术网

Java 等边三角形的中心坐标

Java 等边三角形的中心坐标,java,implementation,Java,Implementation,我当前的三角形类看起来像: public class TriangleEquilateral { private Point cornerA; private Point cornerB; private Point cornerC; private double x1 = 0; private double y1 = 0; private double x2 = 10; private double y2 = 0; private

我当前的三角形类看起来像:

public class TriangleEquilateral {
    private Point cornerA;
    private Point cornerB;
    private Point cornerC;
    private double x1 = 0;
    private double y1 = 0;
    private double x2 = 10;
    private double y2 = 0;
    private double x3 = 5;
    private double y3 = Math.sqrt(75);

    public TriangleEquilateral(){
        cornerA = new Point(x1,y1);
        cornerB = new Point(x2,y2);
        cornerC = new Point(x3,y3);
    }

    public TriangleEquilateral(double X1,double Y1,double X2,double Y2,double X3,double Y3){
        x1 = X1;
        y1 = Y1;
        x2 = X2;
        y2 = Y2;
        x3 = X3;
        y3 = Y3;

        cornerA = new Point(X1,Y1);
        cornerB = new Point(X2,Y2);
        cornerC = new Point(X3,Y3);
    }

    public boolean isEquilateral(){
        double lengthAB = Math.sqrt(Math.pow(x1-x2,2) + Math.pow(y1-y2,2));
        double lengthBC = Math.sqrt(Math.pow(x2-x3,2) + Math.pow(y2-y3,2));
        double lengthCA = Math.sqrt(Math.pow(x3-x1,2) + Math.pow(y3-y1,2));

        boolean isEquilateral = false;
        if(lengthAB == lengthBC && lengthBC == lengthCA && lengthCA == lengthAB){
            isEquilateral = true;
        }
        System.out.println(lengthAB);
        System.out.println(lengthBC);
        System.out.println(lengthCA);
        return isEquilateral;
    }

    public double sideLength(){
        double sL = 0;
        if(this.isEquilateral() == true){
            sL = Math.sqrt(Math.pow(x1-x2,2) + Math.pow(y1-y2,2));
        }
        return sL;
    }

如何确定等边三角形中点的坐标?我知道中点是x=(base/2)y=heigth/2,但这只适用于底部水平的情况(两个角具有相同的y值)

这更像是一个数学问题,而不是java问题。无论如何,要找到重心:

x = (x1 + x2 + x3) / 3
y = (y1 + y2 + y3) / 3

这更像是一个数学问题,而不是java问题。无论如何,要找到重心:

x = (x1 + x2 + x3) / 3
y = (y1 + y2 + y3) / 3

对于等边三角形,三角形中心的坐标与其内圆中心的坐标相同

查阅:

由于
a=b=c
,很容易看出等边三角形的中心坐标是简单的

{ (x0+x1+x2)/3, (y0+y1+y2)/3 }

对于等边三角形,三角形中心的坐标与其内圆中心的坐标相同

查阅:

由于
a=b=c
,很容易看出等边三角形的中心坐标是简单的

{ (x0+x1+x2)/3, (y0+y1+y2)/3 }

这不是一个Java问题,甚至不是一个编程问题,而是一个数学问题。你看过数学网站或维基百科吗?你试过在纸上解决这个问题吗?这不是一个Java问题,甚至不是一个编程问题,而是一个数学问题。你看过数学网站或维基百科吗?你试过在纸上写出来吗?