JavaGis

JavaGis大草原

 

求方位角

double AzimuthAngle(double x1,double y1,double x2,double y2)
{
 double dx,dy,angle;
 dx=x2-x1;
 dy=y2-y1;
 if(x2 == x1)
 {
  angle=PI/2.0;
  if(y2==y1) angle=0.0;
  else if(y2<y1) angle=3.0*PI/2.0;
 }
 else if((x2>x1) && (y2>y1)) angle=atan(dx/dy);
 else if((x2>x1) && (y2<y1)) angle=PI/2+atan(-dy/dx);
 else if((x2<x1) && (y2<y1)) angle=PI+atan(dx/dy);
 else if((x2<x1) && (y2>y1)) angle=3.0*PI/2.0+atan(dy/-dx);

 return (angle*180/PI);
}

posted on 2006-09-10 11:18 zdygis 阅读(1402) 评论(1)  编辑  收藏 所属分类: ArcGis

评论

# 哈哈哈 2009-03-25 16:58

非常感谢  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 

导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

文章分类

文章档案

Gis世界

Java天空

Oracle海洋

搜索

最新评论

阅读排行榜

评论排行榜