之前的项目中有场景需要绘制曲线,但是当时没有解决,用折线代替的,今天下午借助官方demo,又看了下minigui中的几个画线函数,这里记录一下(lineTo,moveTo, lineEx暂不解释,看官方api解释即可),

  1. 绘制多段折线的函数
  void PolyLineEx(HDC hdc,const POINT *  pts,int nr_pts);pst: 绘制点的数组nr_pts:要绘制的折线的条数static POINT pts2 [] ={{100,80},{200,120},{200,280},{100,320},};SetBrushColor(hdc,COLOR_blue);PolyLineEx(hdc,pts,4);
     上述代码的效果是绘制了4段折线,如果将4改成3,则只绘制前3个点的。
  1. 绘制圆弧的函数
void PolyArcEx  ( HDC  hdc, const ARC *  arcs,  int  nr_arcs )

demo如下:

ARC arc;
arc.x = 150;
arc.y = 150;
arc.width = 100;
arc.height = 100;
arc.angle1 = 45*64;
arc.angle2 = 180*64;
PolyArcEx(neicun_hdc,&arc,1);

这个demo没什么好说的,主要解释下角度:angle1指的是圆弧的起始角度,0度就是笛卡尔坐标系Xz轴正方向,angle2为正时,就是以angle1为起点逆时针绘制,angle2为负,就是顺时针绘制。

  1. 绘制曲线的函数
    void SplineTo(HDC hdc,const POINT* pts);

Demo如下:

static POINT pts [] ={{100,80},{200,120},{200,280},{100,320},
};/* Bezier spline */
SetPenColor (hdc,PIXEL_red);
SplineTo(hdc,pts);

SplineTo函数绘制的是贝塞尔曲线,需要4个控制点,绘制的点的个数是4个点距离之间的平方根,它和上面PolyLineEx函数区别就在于,一个是绘制折线,一个是绘制曲线。

问题:怎么利用SplineTo函数绘制连续的曲线呢,我暂时不知道……(

MiniGUI中的几个画线函数相关推荐

  1. Python中星号、下画线、斜线含义汇总

    封面图片:<Python程序设计基础(第2版)>,ISBN:9787302490562,董付国,清华大学出版社 图书详情: 配套资源:用书教师可以免费获取教学大纲.教案.课件.源码.习题答 ...

  2. [stm32] 利用uc-gui封装画图和画线函数移植51上的模拟动画

    >_<:这里的动画是黄色矩形区域中一个模仿俯视图的起重机运作动画,一个是模仿主视图的吊钩的运动.通过改变初始Init函数中的数据b_x,b_y实现矩形区域的移动.当实时采集时要首先根据起重 ...

  3. 画线函数Glib_Line算法的研究

      在这里首先先简单把我对函数的功能的理解阐述一下,方便后面的分析:Glib_Line函数实现的功能是通过参数给定(x1,y1,x2,y2,color),来确定起点(x1,y1)和终点(x2,y2)两 ...

  4. Graphics.h画线函数和初始化绘制环境

    昨天帮同学做了个课程实验(一个非计算机专业同学),有看到了graphics.h这个头文件,还记得在大一的时候刚刚接触C语言,一片茫然(当时0基础学习计算机,刚刚学会上网),还好寝室有大神带着,一步一步 ...

  5. Unity中在Game窗口画线

    在Unity中画线有几种方式: Debug.DrawLine()  函数画线,在Game窗口不开启 Gizmos 时,只在Scene窗口显示,多用于调试. 通过  LineRenderer  来画线, ...

  6. c语言 画线函数,c语言绘制函数曲线

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 我这种方法为什么图形只能显示一下就不见了,这是为什么?能不能用在双曲线上??能的话改哪里?? #include#includefloat a,b,c,xm ...

  7. VC++ 利用MFC的CWindowDC类实现画线功能 在桌面窗口中画线 绘制彩色线条 CPen nPenStyle nWidth crColor

    目录 利用MFC的CWindowDC类实现画线功能 在桌面窗口中画线 绘制彩色线条 CPen nPenStyle nWidth crColor 接上:VC++ 绘制线条 OnLButtonDown函数 ...

  8. 海思3559万能平台:VGS的画线处理

    前言   海思的OSD功能除了之前提到的第三方库,自己的VGS也可以做到一些简单的诸如画线之类的操作,这里介绍下假如类似识别时需要画矩形框的时候可以的一种做法 海思VGS简介   海思的VGS 是视频 ...

  9. 【MFC】实现简单画板功能,包含画点、画线、矩形、棋盘,指定棋盘大小等功能。

    [MFC]实现简单画线.矩形.棋盘功能. 一.实现基础绘画功能 (一)新建工程 (二)实现画点功能 (三)实现画直线功能 (四)实现画矩形功能 (五)实现画棋盘功能 二.基础交互式示例 (一).交互式 ...

最新文章

  1. 事件绑定在IE下this是window的问题
  2. Linux下xz与tar的区别
  3. laravel大型项目系列教程(四)之显示文章列表和用户修改文章
  4. androidtabhost缓存_Android学习笔记(一):TabHost存放多个Activity
  5. 想问一下C++里queue要怎么遍历
  6. 9款超绚丽的HTML5/CSS3应用和动画特效
  7. socket初级使用(客户端)
  8. c++ 读取访问权限冲突_Linux系统利用可执行文件的Capabilities实现权限提升
  9. 【youcans 的 OpenCV 例程200篇】150. 边缘检测梯度算子
  10. Qt文档阅读笔记-Q_GADGET官方解析及实例
  11. 完全背包问题(信息学奥数一本通-T1268)
  12. 程序员测试死循环给老板发了10000条短信……
  13. Threading模块
  14. 第一章:Ruby 安装 - Windows
  15. 机器学习应用——导学part
  16. DID 去中心化数字身份
  17. windows编程经典书籍+VC++学习路线资料
  18. win11电脑内存占用过高的解决办法
  19. Android物理按键功能更改
  20. Linux如何安装mysql数据库

热门文章

  1. 深度学习基础知识点归纳总结
  2. CF19E Fairy (奇偶环,树上差分)
  3. 关于DOM事件的Bubbling和Capturing
  4. 物联网模块选择注意事项
  5. markdown神器 -Typora使用教程笔记
  6. 数据安全态势感知解决方案汇总
  7. 岁月温柔-10 妈妈的执念--不肯开空调,坚持使用油汀
  8. 用友U9产品SOA设计架构遭技术质疑
  9. Java设计模式——行为型模式之观察者模式
  10. 定时任务:springboot集成Quartz实现多任务多触发的动态管理