TC官方合作论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: xiaoling2013
打印 上一主题 下一主题

[已解决] 2个点之间怎么计算角度?

[复制链接]
11#
发表于 2013-9-12 01:15:34 | 只看该作者
回复 1楼xiaoling2013的帖子
  1. //红点( x1, y1)    蓝点( x2, y2)
  2. 数学.反正切值((y2-y1)/(x2-x1))
复制代码
结果是弧度值        结果*180/3.1415926535  换成角度
回复 支持 反对

使用道具 举报

12#
发表于 2013-9-12 01:29:47 | 只看该作者
回复 1楼xiaoling2013的帖子

我郑重申明两点:
1.你提的问题本身很难理解,两点之间有距离,咋还有角度了
2.我的函数计算的是:以红点为原点,红点所在的那条黑线为X轴(红点向右为x轴正向,向左为x轴负向),y轴为与黑线垂直且过红点的那条线(上为正,下为负,你懂得) 这个大前提下,红蓝点的连线与x轴正向所加的角。这未必符合你的要求,但我只能这样理解了。抱歉!
上代码:
  1. function 计算角度(x1,y1,x2,y2)//(x1,y1)和(x2,y2)分别为第一点和第二点的坐标值
  2.         变量 临时变量1=x2-x1       
  3.     变量 横直角边长=数学.绝对值(临时变量1)
  4.         变量 临时变量2=y1-y2//warnning: 是y1-y2       
  5.     变量 竖直角边长=数学.绝对值(临时变量2)
  6.    
  7.     变量 斜边长=数学.开方(横直角边长*横直角边长+竖直角边长*竖直角边长)
  8.     变量 临时变量3=类型.转浮点型(竖直角边长)/斜边长
  9.     变量 弧度=数学.反正弦值(临时变量3)
  10.     角度=类型.转浮点型(弧度)*180/3.1415926
  11.     如果(临时变量1<0 && 临时变量2>0)
  12.         角度=180-角度
  13.     如果结束
  14.     如果(临时变量1<0 && 临时变量2<0)
  15.         角度=角度+180
  16.     如果结束
  17.     如果(临时变量1>0 && 临时变量2<0)
  18.         角度=360-角度
  19.     如果结束
  20.     help.messagebox(角度 & "度")
  21. endfunction   
复制代码
回复 支持 反对

使用道具 举报

13#
发表于 2013-9-12 01:30:52 | 只看该作者
我的乖乖,这玩意这么短居然写了近半个小时
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-10-2 09:54 , Processed in 0.203813 second(s), 24 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表