VBA编程

VBA编程实例----绘制李萨茹图形

学过编程的朋友一定编写过绘制图形的程序,函数曲线、杨辉三角形、金刚石、李萨茹图形等等。
      数学老师会遇到很多关于数学图形的问题。有些图形用VBA在PPT中绘制,不仅可以绘制图形而且还可以演示绘笔的运动轨迹,效果极佳。以下示例通过绘制“李萨茹图形”说明在PPT中通过VBA编程完成绘制函数曲线的方法。

李萨茹曲线是在X轴方向和Y轴方向振幅不变,但周期不同的二维谐振子运动的轨迹。数学表达式如下:

X=r1*sin(a*th)

Y=r2*sin(b*th)                       0≤th≤2π

演示效果:

添加控件:

源代码:

Private Sub CommandButton1_Click()
    Const PI = 3.14
    Dim a, b, gra, k As Integer
    Dim th As Single
    w = 400 '绘图区域宽度
    h = 200 '绘图区域高度
    a = TextBox1.Text
    b = TextBox2.Text
    k = 400 '画线的密度
    For th = 0 To 2 * PI + 0.01 Step PI / k  'th:角度, 0≤ th ≥2π
        x = 0.4 * w * Sin(a * th) + 365
        y = 0.4 * h * Sin(b * th) + 270
       
        With ActivePresentation.SlideShowWindow.View
             .PointerColor = RGB(255, 0, 0)
             .DrawLine x + 1, y, x, y + 1
        End With
       
        With ActivePresentation.Slides(1)
            .Shapes.AddLine(x + 1, y, x, y + 1) _
            .Line.ForeColor.RGB = RGB(255, 0, 0)
        End With
    Next
End Sub

Private Sub CommandButton2_Click()
  With Application.ActivePresentation.Slides(1).Shapes
    For intShape = .Count To 1 Step -1
        With .Item(intShape)
            If .Type = msoLine Then .Delete
        End With
    Next
End With
End Sub

Private Sub CommandButton3_Click()
  Application.SlideShowWindows(1).View.Exit
End Sub

.

VBA编程实例----绘制李萨茹图形相关推荐

  1. MATLAB图形绘制--李萨茹图形的绘制以及生成运动轨迹的动画

    t = [0:0.02:10]; x = cos(t); y = cos(3*t+pi/2);for i = 1:length(t)scatter(x(i),y(i));hold on; % scat ...

  2. matlab怎么绘制李萨如图形_matlab研究李萨如图形

    nx 指的是假想的水平线跟图形的交点数, ny 指的是假想的垂直线跟图形的交点数. 当 fy/fx = 1:1 的时候是个圆: 2:1 的时候是个横向的 8 ,即 ∞ : 3:1 的时候是三个横向的圆 ...

  3. 示波器的使用及利用示波器绘制李萨如图形

    示波器的使用及利用示波器绘制李萨如图形 具体已国产绿林YB43020B模拟示波器为例 -. 实验原理: 示波器的基本组成部分:示波管.竖直放大器.水平放大器.扫描发生器.触发同步和直流电源等. 2)模 ...

  4. matlab怎么绘制李萨如图形_基于MATLAB图形界面研究李萨如图形及其讨论

    龙源期刊网 http://www.qikan.com.cn 基于 MATLAB 图形界面研究李萨如图形及 其讨论 作者:刘斯禹 韩雪 郭天超 来源:<科技资讯> 2016 年第 06 期 ...

  5. matlab怎么绘制李萨如图形_MATLAB仿真李萨如图形小议

    MATLAB 仿真李萨如图形小议 常 建,丁智勇 [摘 要] 近年来, MATLAB 因其具有很好的数据处理功能及强大的绘图功能而 在各个领域得到广泛应用.有很多学者已经.正在.可能将来还会做 MAT ...

  6. matlab怎么绘制李萨如图形_在MatLab中使用for循环绘制图形

    为什么会发生这种情况...... 使用plot(x(i),y)绘制100个单点(每次迭代一个),默认情况下不会显示它们.因此情节看起来是空的. 解决方案1:矢量化计算和直接绘图 我认为你打算画一条连续 ...

  7. c语言李萨如图形程序,二级:用VB制作李萨如图形动态演示程序

    1 引言 李萨如图形是一个质点的运动轨迹[1],该质点在两个垂直方向的分运动都是简谐运动.李萨如图形是物理学的重要内容之一,在工程技术领域也有很重要的应用.利用李萨如图形可以测量未知振动的频率和初相位 ...

  8. c语言李萨如图形程序,用VB制作李萨如图形动态演示程序

    1 引言 李萨如图形是一个质点的运动轨迹[1],该质点在两个垂直方向的分运动都是简谐运动.李萨如图形是物理学的重要内容之一,在工程技术领域也有很重要的应用.利用李萨如图形可以测量未知振动的频率和初相位 ...

  9. 2022年TI杯模拟电⼦系统设计专题邀请赛——李萨如图形演示装置

    李萨如图形演示装置 任务 一.系统方案 1.1 方案描述 1.2 电路设计 1.2.1 倍频电路 1.2.2滤波器电路 1.3软件设计 二. 理论分析 任务 设计并实现李萨如(Lissajous)图形 ...

最新文章

  1. 工业互联网 — 5G TSN
  2. ubuntu16.04 彻底卸载MySQL
  3. JavaScript原生的节点操作
  4. linux下文件夹压缩解压.tar , .gz , .tar.gz , .bz2 , .tar.bz2 , .bz , .tar.bz , .zip , .rar
  5. C# 线程问题之争用条件
  6. 【JavaWeb】JDBC优化 之 数据库连接池、Spring JDBC
  7. 通过可视化来了解你的Spark应用程序
  8. 樊登讲亲密关系_看了《亲密关系》这本书,原来吵架是牺牲对方来保护自己
  9. 招兵买马,亚马逊再次补强人工智能
  10. 记忆碎片---搭建php+apache+eclipse中的问题
  11. 坐标下降法和交替最小二乘法的区别是什么?
  12. 通俗易懂地讲解 __block 变量
  13. excel常用的数据处理方法
  14. DiskGenius屏蔽硬盘坏道方法
  15. 产品经理为什么比程序员工资要高?百度员工:因为他是产品灵魂
  16. 分布式长连接 session 共享解决方案
  17. cesium获取当前屏幕中心点坐标
  18. DTD-文档类型定义(Document Type Definition)
  19. java apns feedback_php从苹果apns的feedback服务器获取推送失败的token
  20. 数据库 mysql 删除一列数据

热门文章

  1. 面对众多云数据库,应该使用哪个云数据库好?
  2. win7锁屏背景壁纸修改
  3. Win7更换锁屏壁纸
  4. 更换win7锁屏壁纸
  5. Qgis系统教程1:软件安装
  6. 名茶事典——【贡(寿)眉】
  7. 中国农业生物多样性危机-农业大健康·蒋高明:谋定生态安全
  8. 学弟教程-Python-Flask设置允许跨域
  9. 牵线搭桥,『桥接模式』
  10. 护照验证护照阅读ocr识别