java 计算多个点间的最短距离分配吗

Python047

java 计算多个点间的最短距离分配吗,第1张

java 计算多个点间的最短距离分配吗

package import java.awt.Pointpublic class JuLi { public static void main(String[] args) { Point p1 = new Point(5, 5)定义第一个点的坐标(5,5),或者你自己设置x,y坐标 Point p2 = new Point(6,6)定义第一个点的坐标(5,5),

求直线间的最短距离

利用二元函数求极值,先变成参数方程

x=t.....1)

y=2t....2)

z=t+1...3)

x=p.....4)

y=p+7...5)

z=p.....6)

得到:d=|(p-t)^2+(p+7-2t)^2+(p-t-1)^2|

dt=0,dp=0

2p-2t-2p+14-4t+2p-2t-2=0

-2p+2t-4p-28+8t-2p+2t+2=0

12p-16t+24=0

12p-18t+39=0

t=15/2,p=8

d=|1/4+0+1/4|=1/2

地球表面两点间最短距离怎么计算

球面两点最短距离是过这两点的大圆(半径等于球体的半径)的劣弧.

已知两地的

分别为σ1、σ2,纬度分别为φ1、φ2,求两地最近距离的公式为:

S=2πRθ/360° (1)

其中θ可由下面的式子求得:

[sin(θ/2)]^2=[sin(φ1-φ2)/2]^2+[sin(σ2-σ1)/2]^2cosφ1cosφ2 (2)

注:1、式中S为球面上任意两点的最短距离(球面距离);

2、θ为两点间的

,在运用(2)式求θ时,纬度φ和

σ本身有

,通常北纬正,南纬负;东经正,西经负.

3、因不会用上下标,所以式中^2指平方; cosφ1cosφ2、σ2-σ1 、φ1-φ2中的1和和2为下标.

至于定性描述球面上两点的最短路线,可总结如下:

1、若两点在同一经线圈上或同在赤道上(从理论上讲,它们都是大圆),则两地的最短路线是沿经线圈或赤道走劣弧.

2、若在同一

上(赤道除外),两地最短路线是均向高纬弯曲(这两点所在的大圆劣弧).

3、若两点既不在同一经线圈,也不在同一

圈,就较为复杂,一般不考虑了.

如何计算:地球上两点间最短距离

球面上两点闷最短距离是过两点和球心的圆上的劣弧。地球上也应类似。

地理中最短距离怎么计算

这种题目只能用勾股定理来做,当然做出来是个估算值,近似值,可用作参考。 你出的这个题目最多会出现在选择题中,并且选项数值一般差别较大。

数学 两点间最短距离

两点之间直线最短,所以要绕过障碍物,显然是连接端点的直线最短

怎么计算定点到抛物线的最短距离

称该点为A,抛物线上的点为B,过B的切线与AB垂直。这样可以求出B,以及AB

地球上面两点之间的最短距离怎么算,我

设立空间坐标换算

地球中心为原点,

北极为Y+,(0,0)度经纬为X+,东半球为Z+

然后比如说知道两点的经纬度

比如说东经a度北纬b度

然后换算成空间的坐标就是

(cosa*co *** ,sinb,sinaco *** )

然后你就有(x1,y1,z1)和(x2,y2,z2)

然后用空间线段距离和余弦定理算出两点的夹角

然后已知一周角所对的弧就是4万千米

所以用那个角的大小除以一周角再成4万千米

就得到两点间的球面距离了

这个在环球航行里面经常用到,很简单的.

地球的椭圆离心率不超过1%,一般情况下就没有必要换算成椭圆计算.

而且你问的也很奇怪,什么叫做长短轴?

空间里面的椭圆球是三维的,轴长是三个,X,Y,Z

如果要计算的话,我的计算方法也一样适用,不过步骤麻烦一点

1.先进行三维空间变换,把三轴不同的长度变成相同的长度,

求出新空间的坐标

2.反变换求出原空间的坐标和投影坐标以及夹角

3.椭圆球的切面也会是椭圆,求出那个椭圆的方程和它的投影方程

4.代入投影坐标求出原坐标的对应弧

5.用微积分求出对应弧长

然后就是需要的结果了.

问同一纬度的两点的最短距离,如何计算

北半球向北偏,南半球向南偏。

赤道上就是赤道纬线的距离

一个点到圆的最短距离为2最长距离为8,求半径

5

import java.util.Scanner

public class Demo

{

public static void main(String[] args)

{

Scanner sc=new Scanner(System.in)

Point p1,p2

System.out.println("请输入第1个点的x、y坐标:")

p1=new Point(sc.nextDouble(),sc.nextDouble())

System.out.println("请输入第2个点的x、y坐标:")

p2=new Point(sc.nextDouble(),sc.nextDouble())

System.out.println("点"+p1+"与点"+p2+"的距离是"+p1.distance(p2))

}

}

class Point

{

Point(double x,double y)

{

this.x=x

this.y=y

}

public String toString()

{

return "("+x+","+y+")"

}

double distance(Point p)

{

return Math.sqrt(Math.pow(this.x-p.x,2)+Math.pow(this.y-p.y,2))

}

private double x,y

}

package com

import java.awt.Point

public class JuLi {

public static void main(String[] args) {

Point p1 = new Point(5, 5)// 定义第一个点的坐标(5,5),或者你自己设置x,y坐标

Point p2 = new Point(6,6)// 定义第一个点的坐标(5,5),或者你自己设置x,y坐标

// 两点间距离

double jili = Math.sqrt(Math.abs((p1.getX() - p2.getX())

* (p1.getX() - p2.getX())+(p1.getY() - p2.getY())

* (p1.getY() - p2.getY())))

System.out.println("两点间的距离是:" + jili)

}

}