加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

致新手:用VB6解决一些有趣的问题(五)

发布时间:2020-12-16 23:11:42 所属栏目:大数据 来源:网络整理
导读:下面,我们来设计一个强悍的程序 嘿嘿,程序设计起码要这样才有点意思嘛 我们在Picture上画一个三角形,这下可不是Print一堆字符了 我们必须要先算出三角形的 三个顶点 然后连线 比如三角形 ABC三点 我们以A作为坐标原点,对应Picture的中心 我们用X,Y来计算坐标

下面,我们来设计一个强悍的程序

嘿嘿,程序设计起码要这样才有点意思嘛

我们在Picture上画一个三角形,这下可不是Print一堆字符了

我们必须要先算出三角形的 三个顶点 然后连线

比如三角形 ABC三点 我们以A作为坐标原点,对应Picture的中心

我们用X,Y来计算坐标和Picture上坐标的偏移量,A为(0,0)

如果AB长为a 沿着X轴,那么B点的坐标是(a,0)

现在来算C点,根据余弦定理有

'c^2=a^2+b^2-2*a*b*CosC
'CosC=(a^2+b^2-c^2)/2ab

别烦恼了,我数学也马虎,余弦定理难算,我们就来个简单的

(聪明的程序员会千方百计设计出程序)

以A为圆心 AC长(c)为半径的园 X^2+Y^2 = c^2

以B为圆心 BC长(b)为半径的园 (X-a)^2+Y^2=b^2

C点为两个圆的交线,所以两个方程,两个未知数,注意有两个交点哦

(隐隐感觉到 这个就是余弦定理) 解出

2*a*X=a^2+c^2-b^2 '因为我们设AB沿着X轴,所以X只有一个值

把X代入第一个方程 得出 Y=Sqr(c^2 - X^2),这里Sqr为平方根

得到的是正值,也就是舍去了低于X轴的那个(程序里下面的Y坐标大)

三个标签 垂直方向对应Text1,Text2,Text3分别存放变长a,b,c

一个按钮 一个Picture

好吧,来看看我们画出了什么球样

想给图形填充吗?嘿嘿,哪还要更复杂的算法呢,加油吧,未来的世界是我们的

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读