1  Shapes.AddCurve SafeArrayOfPoints:=pts   贝塞尔曲线

  • https://docs.microsoft.com/zh-cn/office/vba/api/excel.shapes.addcurve
  • 由指定曲线的顶点和控制点的坐标对组成的数组。 您指定的第一个点是起始顶点, 接下来的两个点是第一段贝塞尔线段的控制点。 该曲线每增加一条线段,就要为其指定一个顶点和两个控制点。您指定的最后一个点是曲线的结束顶点。 请注意,必须指定的点数始终为 3n + 1,其中 n 为曲线的线段个数。
  • SafeArrayOfPoints:=pts
  • 贝塞尔曲线
  • 起点,2控制点,2控制点 .....终点------好像必须是3n+1,比如4,7,10等等
  • 第2维只能是2?

1.1 贝塞尔曲线

https://www.zhihu.com/question/29565629

https://baike.baidu.com/item/%E8%B4%9D%E5%A1%9E%E5%B0%94%E6%9B%B2%E7%BA%BF/1091769?fr=aladdin

它通过控制曲线上的四个点(起始点、终止点以及两个相互分离的中间点)来创造、编辑图形。其中起重要作用的是位于曲线中央的控制线。这条线是虚拟的,中间与贝塞尔曲线交叉,两端是控制端点。移动两端的端点时贝塞尔曲线改变曲线的曲率(弯曲的程度);移动中间点(也就是移动虚拟的控制线)时,贝塞尔曲线在起始点和终止点锁定的情况下做均匀移动。注意,贝塞尔曲线上的所有控制点、节点均可编辑。这种“智能化”的矢量线条为艺术家提供了一种理想的图形编辑与创造的工具。

Sub t5()
Dim pts(1 To 4, 1 To 2) As Single
pts(1, 1) = 10
pts(1, 2) = 50pts(2, 1) = 200
pts(2, 2) = 120pts(3, 1) = 150
pts(3, 2) = 210pts(4, 1) = 310
pts(4, 2) = 220Worksheets("sheet4").Shapes.AddCurve SafeArrayOfPoints:=ptsEnd Sub

1.2 第2个贝塞尔曲线

Sub t6()
Dim pts(1 To 10, 1 To 2) As Single
pts(1, 1) = 10         'pts(1, 2) = 50         '这种分类是错误的
pts(2, 1) = 200pts(2, 2) = 120
pts(3, 1) = 150pts(3, 2) = 210
pts(4, 1) = 310pts(4, 2) = 220
pts(5, 1) = 110pts(5, 2) = 280
pts(6, 1) = 190pts(6, 2) = 220
pts(7, 1) = 150pts(7, 2) = 210
pts(8, 1) = 310pts(8, 2) = 220
pts(9, 1) = 110pts(9, 2) = 280
pts(10, 1) = 190pts(10, 2) = 210Worksheets("sheet5").Shapes.AddCurve SafeArrayOfPoints:=ptsEnd Sub

1.3 根据这个原理,控制4个点,果然可以画出想要的这种波浪曲线

  • 起点: 和终点在同一个高度
  • 终点:X大,Y=Y起点
  • 控制点1:X前进,Y往上
  • 控制点2:X继续前进,Y往下

Sub t5()
Dim pts(1 To 4, 1 To 2) As Single
pts(1, 1) = 0           '第1个点的X坐标
pts(1, 2) = 150         '第1个点的Y坐标pts(2, 1) = 150         '第2个点的X坐标
pts(2, 2) = 0pts(3, 1) = 200         '第3个点的X坐标
pts(3, 2) = 300pts(4, 1) = 400
pts(4, 2) = 150Worksheets("sheet4").Shapes.AddCurve SafeArrayOfPoints:=ptsEnd Sub

VBA,Shapes.AddCurve SafeArrayOfPoints:=pts  画贝塞尔曲线相关推荐

  1. C语言画贝塞尔曲线的函数

    程序截图 简单说明 这个函数就是 void drawBezierCurve(COLORREF color, const unsigned int len, ...) color 是贝塞尔曲线的颜色,l ...

  2. 使用ZRender画贝塞尔曲线

    背景 最近设计师控制不住自己的洪荒之力,设计图搞得高端大气上档次,各种曲线满天飞.为了更好地实现页面效果,经常需要绘制形如下图的贝塞尔曲线: 一般实现这种效果有两种思路:SVG和Canvas.直接使用 ...

  3. ios 画线平滑_iOS 画贝塞尔曲线 连续曲线 平滑曲线 曲线图表

    利用贝塞尔曲线画一段连续曲线 bezierDemo2.png bezierDemo1.png image.png 如果我们根据几个点画一条连续的曲线, 我们使用的方法是 - (void)addCurv ...

  4. python如何画贝塞尔曲线_初识贝塞尔曲线

    贝塞尔曲线在CSS动画中和canvas.svg绘图中都是比较重要的一个东西!所以我来好好的小结一下关于它的一些东西. 什么是贝塞尔曲线 贝塞尔曲线于1962,由法国工程师皮埃尔·贝塞尔(Pierre ...

  5. python如何画贝塞尔曲线_Python使用matplotlib实现绘制自定义图形功能示例

    本文实例讲述了Python使用matplotlib实现绘制自定义图形功能.分享给大家供大家参考,具体如下: 一 代码 from matplotlib.path importPath from matp ...

  6. Unity画贝塞尔曲线自定义图片组件

    头一回写这个文章,也是就分享一点自己的学习心得,并且记录下自己做过的这个功能. 事实上我这也是借鉴了大佬的代码,统筹琢磨出来的,比较初级,但是有用. 话不多说,上效果图: 如图所见,展现出来的功能组件 ...

  7. IOS用CGContextRef画各种图形(文字、圆、直线、弧线、矩形、扇形、椭圆、三角形、圆角矩形、贝塞尔曲线、图片)...

    本文转载自:http://blog.csdn.net/rhljiayou/article/details/9919713 首先了解一下CGContextRef: An opaque type that ...

  8. IOS用CGContextRef画各种图形(文字、圆、直线、弧线、矩形、扇形、椭圆、三角形、圆角矩形、贝塞尔曲线、图片)

    本文转载自:http://blog.csdn.net/rhljiayou/article/details/9919713 首先了解一下CGContextRef: An opaque type that ...

  9. cic曲线是什么_贝塞尔曲线基本用法

    使用UIBezierPath可以创建基于矢量的路径,此类是Core Graphics框架关于路径的封装.使用此类可以定义简单的形状,如椭圆.矩形或者有多个直线和曲线段组成的形状等. UIBezierP ...

最新文章

  1. Ubuntu12.04 安装vim出错
  2. 打印python包含汉字报SyntaxError: Non-ASCII character '\xe4' in file
  3. java利用htmlparser得到网页html内容
  4. 用Python一键生成炫酷九宫格图片,火了朋友圈
  5. mvc html绑定变量,c# – Asp.Net MVC 3使用变量对象进行自定义模型绑定
  6. 家卫士扫地机器人好吗_2020年扫地机器人推荐选购指南(扫地机器人实用吗?国内扫地机器人哪个牌子好?)...
  7. 学计算机编程有什么用,编程是什么 学习编程的好处
  8. 鲁瑜计算机,程序员计算器.pptx
  9. mysql8.0.13驱动包_MySQL ODBC驱动 V8.0.13 32/64位 官方版
  10. 航测无人机测绘地理信息免费资料
  11. html展开收起样式,前端网页内容实现展开/收起全文的操作(js+css控制高度实现)...
  12. 第七章 逻辑回归 - 多元逻辑回归
  13. graphpad画生存曲线怎么样去掉删失点_手把手教你用graphpadprism绘制生存曲线
  14. 小学生心算CAI系统
  15. python pyecharts绘制象形柱图Pictorialbar
  16. 我不要你觉得交易中的十大常见问题解析
  17. Windows系统中电脑无法进入睡眠状态的解决办法
  18. mybatispuls 如何通过时间进行范围查询
  19. 傅立叶级数和傅立叶变换是什么关系?
  20. python 输入一个数组_python怎么输入数组

热门文章

  1. 线性调频LFM脉冲压缩 连续波雷达仿真线性调频信号仿真分析压缩
  2. 2023 docker安装gitlab-ce
  3. Couldcompare下采样点云
  4. 51单片机入门教程学习笔记
  5. 五条便利店收银管理小技巧
  6. java后台(java后端开发)
  7. 阿里巴巴代码规范扫描
  8. 每次打开micorsoft office(2007、2010、2013..)软件出现配置进度的原因及解决办法
  9. java 获取httpsession_java使用websocket,并且获取HttpSession,源码分析
  10. 百度地图AndroidSDK:定位、画区域、线路规划、搜索