- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VB 帮我学物理 第三章 用 VB 研究电磁学中的常见问题
第三章 用 VB 研究电磁学中的常见问题
在前面的章节中,我们用许多例子来说明怎么用 VB 来演示力学现象。在这一章
里我们将用 VB 来研究电学中的实际问题。研究之前我们要做一个工作,这是在前面章节中
没有讲的但用到了的,就是实际坐标与计算机坐标的互相转换问题,因为在这一章中我们要
多次用到它,所以我想先举一个例子来把这一个问题讲请楚。”
3 .1 实例一 ——实际坐标与计算机坐标的互换(画带电圆环轴线上的场强分布图)
在这一节中我们将用计算机来完全把计算机坐标与实际坐标作相互转换。其中所作的图
是带电圆环轴线上的场强,其公式为:
1 Qx
E
p 4πε 3
( x20 )a 2 + 2
有了这个例子我们就可以轻松地作以下其它例子了。因此,这一节非常重要。
3 .1.1 算法分析
在第一章我们就讲过了,计算机坐标与我们的实际坐标有两个区别,一是图片框
的 Y 轴方向与我们实际的坐标方向相反;二是图片框的计算机坐标只显示第一象限(没有
负值)。要解决这两个问题,我们会很轻松地想到坐标的平移和旋转。即以作图区的中心为
我们实际坐标的原点,其转换关系为:(设作图区的控件名为:draw )
xt = x0 + draw.ScaleWidth / 2
yt = -y0 + draw.ScaleHeight / 2
其中的 x0,y0 为我们的实际坐标,可以看到在 y0 前我们用了一个负号,这是对 Y 坐标
的旋转。后边所加的是一个平移的过程,相信大家很清楚,同时又与我们平时所学的平移公
式略有不同,但实际上是一样的,因为我们旋转了坐标再平移的,这是把实际坐标转为计算
机坐标的过程。下面我们将用解方程的方法把计算机坐标转为实际坐标:
xz = x0 - draw.ScaleWidth / 2
yz = -y0 + draw.ScaleHeight / 2
这里参数就不作说明了,与上面的方程恰好相反。
最后讲一下图中坐标轴的画法,因为作不同的图,我们用的坐标宽高是不同的,所以,
要是都用一种方法来作坐标轴显然不可以。这里我们用的是每次更新的方法,即在每次作图
时都返回到正确的坐标轴的过程后再返回来作图的方法。
其过程如下:
Public Sub aix(a As Double)
作坐标轴
Dim xx As Double
Dim yy As Double
Dim xc As Double
Dim yc As Double
xx = CDbl(draw.ScaleWidth)
yy = CDbl(draw.ScaleHeight)
--40--
VB 帮我学物理 第三章 用 VB 研究电磁学中的常见问题
xc = xx / 2
yc = yy / 2
draw.ForeColor = vbBlue
作坐标轴的 X 轴
draw.Line (0, yc)-(xx, yc)
draw.Line (xx, yc)-(xx - a, yc - a)
draw.Line (xx, yc)-(xx - a, yc + a)
作坐标轴的 Y 轴
draw.Line (xc, 0)-(xc, yy)
draw.Line (xc, 0)-(xc - a, a)
draw.Line (xc, 0)-(xc + a, a)
End Sub
其中 a 为作图中的坐标轴的箭头大小。具体代码请参看下面的程序代码。
3 .1.2 界面设计
这只是一个引例,我们下面设计了一个能够说明问题的简单界面,如图 3-1 :(说明:
任何一个程序界面你都可以在 VB 环境下随意改变)
图3-1 带电圆环轴线上场强分布界面设计
3 .1.3 程序代码
原创力文档


文档评论(0)