TC官方合作论坛
标题:
2个点之间怎么计算角度?
[打印本页]
作者:
xiaoling2013
时间:
2013-9-11 23:52
标题:
2个点之间怎么计算角度?
[attach]11050[/attach]
知道红点跟蓝点的坐标后怎么计算出角度呢?
作者:
q273814
时间:
2013-9-12 00:03
高中的数学问题 sin cos 这些东西还记得吧
作者:
xiaoling2013
时间:
2013-9-12 00:04
回复
2楼
q273814
的帖子
俺没学过
怎么算呢 教一下
作者:
q273814
时间:
2013-9-12 00:26
回复
3楼
xiaoling2013
的帖子
你百度搜啊 我给你计算方式 你又看不懂
高中数学 呃 初中好像也学了的
作者:
xiaoling2013
时间:
2013-9-12 00:40
回复
4楼
q273814
的帖子
既然这样我就自己琢磨了!
作者:
q273814
时间:
2013-9-12 00:42
回复
5楼
xiaoling2013
的帖子
提示 以蓝点做下面黑线的垂线 构成直角三角形 根据坐标可以得知 两直角边的长度
作者:
TC
时间:
2013-9-12 00:52
好像是计算三边的长度,然后有一个公式可以算出来
作者:
q273814
时间:
2013-9-12 00:58
回复
7楼
TC
的帖子
知道2边就神马都知道了 这是直角的
作者:
99365
时间:
2013-9-12 01:09
反正有 XY
Y + - 就是十字 90°
作者:
twiliam
时间:
2013-9-12 01:09
//红点( x1, y1) 蓝点( x2, y2)
数学.反正切值((y2-y1)/(x2-x1))
复制代码
作者:
twiliam
时间:
2013-9-12 01:15
回复
1楼
xiaoling2013
的帖子
//红点( x1, y1) 蓝点( x2, y2)
数学.反正切值((y2-y1)/(x2-x1))
复制代码
结果是弧度值 结果*180/3.1415926535 换成角度
作者:
dongyijun1979
时间:
2013-9-12 01:29
回复
1楼
xiaoling2013
的帖子
我郑重申明两点:
1.你提的问题本身很难理解,两点之间有距离,咋还有角度了
2.我的函数计算的是:以红点为原点,红点所在的那条黑线为X轴(红点向右为x轴正向,向左为x轴负向),y轴为与黑线垂直且过红点的那条线(上为正,下为负,你懂得) 这个大前提下,红蓝点的连线与x轴正向所加的角。这未必符合你的要求,但我只能这样理解了。抱歉!
上代码:
function 计算角度(x1,y1,x2,y2)//(x1,y1)和(x2,y2)分别为第一点和第二点的坐标值
变量 临时变量1=x2-x1
变量 横直角边长=数学.绝对值(临时变量1)
变量 临时变量2=y1-y2//warnning: 是y1-y2
变量 竖直角边长=数学.绝对值(临时变量2)
变量 斜边长=数学.开方(横直角边长*横直角边长+竖直角边长*竖直角边长)
变量 临时变量3=类型.转浮点型(竖直角边长)/斜边长
变量 弧度=数学.反正弦值(临时变量3)
角度=类型.转浮点型(弧度)*180/3.1415926
如果(临时变量1<0 && 临时变量2>0)
角度=180-角度
如果结束
如果(临时变量1<0 && 临时变量2<0)
角度=角度+180
如果结束
如果(临时变量1>0 && 临时变量2<0)
角度=360-角度
如果结束
help.messagebox(角度 & "度")
endfunction
复制代码
作者:
dongyijun1979
时间:
2013-9-12 01:30
我的乖乖,这玩意这么短居然写了近半个小时
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1