shell编写三角函数_VB中三角函数计算.doc

本文介绍了VB中反三角函数的计算,包括反正弦、反余弦、反正割和反余割的实现,并给出了VB调用API函数绘制正弦波的代码示例。此外,还展示了如何使用Shell命令来打开控制面板和资源管理器。
摘要由CSDN通过智能技术生成

VB中三角函数计算

VB中反三角函数的计算By? colleen 发表于 2007-3-28 14:20:06?

VB中反三角函数的计算问题,但由于马上就要上课了,而且自己对VB中的反三角函数也不够熟悉,所以决定和他一起在课后探讨。现在经过整理,大致如下:

Atn()是VB反正切函,VB不提供其他反三角函,不可以用下列公式出:

Inverse Sine (反正弦)

Arcsin(X) = Atn(X / Sqr(-X * X + 1))

Inverse Cosine (反余弦):

Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)

Inverse Secant (反正割):

Arcsec(X) = Atn(X / Sqr(X * X - 1)) + Sgn((X) - 1) * (2 * Atn(1))

Inverse Cosecant (反余割):

Arccosec(X) = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - 1) * (2 * Atn(1))

以上这些公式,其实就是应用了数学中的各类三角函数和正切函数之间的关系导出的。其中需要注意的是其中的 X 不能等于正1。由于最近工作忙,多日未打理博客了,故今日有闲,发一个VB调用API涵数画正弦波的代码供大家参考.

代码如下:

Option ExplicitDim Points() As POINTAPIDim NumPoints As IntegerDim ZanTin1Dim apik1Dim apik2Dim VConst pi = 3.14159265358979Private Type POINTAPI??????? x As Long??????? y As Long??? End Type?? Private Declare Function Polyline Lib "gdi32" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As LongPrivate Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)Select Case ButtonCase 1ReDim Points(0 To 2)V = 100Picture1.ClsZanTin1 = Trueapik1 = 0Do While ZanTin1apik1 = apik1 + 1NumPoints = 2apik2 = (Sin(pi / 180 * apik1)) * VPoints(1).x = apik1 - 1Points(2).x = apik1Points(1).y = 200 - apik2Points(2).y = 200 - apik2If Polyline(Picture1.hdc, Points(1), NumPoints) = 0 Then Exit SubIf apik1 > 742 ThenZanTin1 = FalseEnd IfDoEventsLoopCase 2EndEnd SelectEnd Sub

这只是一个例子,将此段代码稍微修改一下,也可画方波,阶梯波,三角波,和任意曲线,特别适用于对记录画线速度有要求的场合.如虚拟示波器.记录仪表等...

看这段代码:

Private Sub Command1_Click()

Shell "control.exe"

End Sub

一个简单的按钮,执行一句shell,就打开了控件面板。

如果我们这样子做写,也打开了控件面板:

Shell "rundll32.exe Shell32.dll,Control_RunDLL", 1

看到了,这便是系统调用,比用API函数好用多了。

当然,如果想打开控件面板中相应的内容,则可以这样子写:

Shell "rundll32.exe Shell32.dll,Control_RunDLL appwiz.cpl"

说明:appwiz.cpl是添加删除文件组件,是专用控件面板打开。你完全可以找出系统所有的cpl文件,试着用此法调用。当然,你想更简单写,就这样子:

shell "control.exe appwiz.cpl"

因为,cpl文件专用control.exe打开。下面,我们要想打C盘,则这样写:

Shell "explorer.exe c:", 1

explorer.exe是资源管理器程序,他可以打开所有windows里的文件夹。如果要打开并

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值