已知圆中心坐标(x,y)圆半径20公里,沿着圆画一个四边形,计算四边形每个角坐标。

chenpengyu1234 2012-05-07 11:39:32
求高手解答。
...全文
112 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
冷月宫主 2012-05-14
  • 打赏
  • 举报
回复
很好,有没有javascript的呀?Math.toRadians在javascript中不支持。
冷月宫主 2012-05-14
  • 打赏
  • 举报
回复
在地图计算圆的外接正方形,并返回左上顶点和右下顶点(java、javascript)

http://blog.csdn.net/e_wsq/article/details/7565327
小蜗 2012-05-07
  • 打赏
  • 举报
回复
只能说这个圆的外切正方形4个坐标点在 以R = 20*20 +20*20开方 为半径的圆上
chenpengyu1234 2012-05-07
  • 打赏
  • 举报
回复
关键问题外切点的坐标不知道,并且外切的方式有很多中。
a312983516 2012-05-07
  • 打赏
  • 举报
回复

public class Test{
public static void main(String[] args) {
int x = 1,y=1;
System.out.println("zs="+(x-20)+","+(20+y));
}
}

class coordinates{
private int x;
private int y;

public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}

}


做了一个左上点的例子 说一下思路
因为是正圆 所以围绕他的四边形必然是正四方形 由圆心向四角和四边做辅助线 由于是正四方形 所以夹角度数分别为45 90 45 已知X距离 半径是20 则左上点的X坐标为X-20 根据正三角形两边相当 那么Y轴坐标为Y+20 不知道是不是LZ得意思 个人理解!
MiceRice 2012-05-07
  • 打赏
  • 举报
回复
啥叫“沿着圆画一个四边形”,莫非是:外切正方形?

那这个数学题难度貌似太低了吧?
左上角:x-20, y-20
右下角:x+20, y+20
chenpengyu1234 2012-05-07
  • 打赏
  • 举报
回复
经度纬度。

double longitude = Double.valueOf(lon);
double latitude = Double.valueOf(lat);
double radius = (dist * 0.00062137119223733);
double lat_top = latitude - (radius / 69);
double lon_lft = longitude - (radius / Math.abs(Math.cos(Math.toRadians(latitude)) * 69));
double lat_bot = latitude + (radius / 69);
double lon_rgt = longitude + (radius / Math.abs(Math.cos(Math.toRadians(latitude)) * 69));

自己解决 。
MiceRice 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
这个完全就有问题了。上海的坐标(x,y)121.23,31.23 x-20,y-20 ~ x+20,y+20 ?
[/Quote]

先确认下,你给出的坐标,单位是啥?莫非是 经度 和 维度?
VanBaston 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
这个完全就有问题了。上海的坐标(x,y)121.23,31.23 x-20,y-20 ~ x+20,y+20 ?
[/Quote]
是x的坐标要在 x-20 到 x+20 之间,y的坐标要在y-20 到 y+20之间
上边那种说法是要在那2个坐标组成的和xy轴平行的正方形中
chenpengyu1234 2012-05-07
  • 打赏
  • 举报
回复
20公里的坐标,不可能是这么计算的吧。x-20?这都跑到哪里去了。[Quote=引用 6 楼 的回复:]

引用 5 楼 的回复:
请教下大侠,已知参数(x,y)圆中心坐标,计算出20公里之内出现的商家“坐标“点,此坐商家标点在数据库已经有。怎么计算。


这个到不难,假设 商家为 (sx, sy):
1、范围框定:首先用 x-20,y-20 ~ x+20,y+20 做大范围过滤,必须快速缩小范围,否则浪费性能;
2、精确匹配:然后用在用 sqrt((sx - x)^2 + (sx - ……
[/Quote]
chenpengyu1234 2012-05-07
  • 打赏
  • 举报
回复
这个完全就有问题了。上海的坐标(x,y)121.23,31.23 x-20,y-20 ~ x+20,y+20 ?
MiceRice 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
请教下大侠,已知参数(x,y)圆中心坐标,计算出20公里之内出现的商家“坐标“点,此坐商家标点在数据库已经有。怎么计算。
[/Quote]

这个到不难,假设 商家为 (sx, sy):
1、范围框定:首先用 x-20,y-20 ~ x+20,y+20 做大范围过滤,必须快速缩小范围,否则浪费性能;
2、精确匹配:然后用在用 sqrt((sx - x)^2 + (sx - y)^2) <= 20 判定是否20公里内。

步骤 1 和 2都可以交给数据库,步骤1可1借助索引快速完成,步骤2需要计算。
chenpengyu1234 2012-05-07
  • 打赏
  • 举报
回复
请教下大侠,已知参数(x,y)圆中心坐标,计算出20公里之内出现的商家“坐标“点,此坐商家标点在数据库已经有。怎么计算。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧