简单图形编程学习(2)
来源:互联网 发布:基因表达式编程 编辑:程序博客网 时间:2024/06/14 02:33
画弧线和曲线
通过Arc()函数画弧线或整个椭圆。椭圆限定在一个矩形内,称为外接矩形。
Arc()函数的原型说明如下:
在Windows系统中,弧线从开始点到终点的方向是逆时针方向,但可以通过SetArcDirectoin()函数将绘制弧线方向设置为顺时针方向
用Arc()绘制圆,圆弧,椭圆,代码如下:
for (int i =0 ;i<6;i++)
{
pDC->Arc(260-5*i,70-5*i,260+5*i,70+5*i,260+5*i,70,260+5*i,70);
}
for (int i = 3; i<6;i++)
{
pDC->Arc(260-10*i,70-10*i,260+10*i,70+10*i,
(int)260+10*i*cos(60*3.14/180),
(int)70+10*i*sin(60*3.14/180),
(int)260+10*i*cos(60*3.14/180),
(int)70-10*i*sin(60*3.14/180));
pDC->Arc(260-10*i,70-10*i,260+10*i,70+10*i,
(int)260-10*i*cos(60*3.14/180),
(int)70-10*i*sin(60*3.14/180),
(int)260-10*i*cos(60*3.14/180),
(int)70+10*i*sin(60*3.14/180));
}
效果图:
Bezier曲线 PolyBezier()函数可以画一条或多条Bezier曲线,其函数原型说明如下:
lppt参数是曲线控制顶点所组成的数组,cPoints参数表示lppt数组中顶点数。
如果lppt数组用于画多条Bezier曲线,第二条以后的曲线只需要三个控制点,因为后面的曲线总是把前一条曲线的终点作为自己的起点
示例程序代码如下:
POINT PolyBezier[4]={{20,310},{60,240},{120,300},{160,330}};
pDC->Polyline(PolyBezier,4);
pDC->PolyBezier(PolyBezier,4);
效果图:
画封闭曲线
Rectangle()函数用来画矩形
BOOL CDC::Rectangle(int nLeftRect,int nTopRect,int nRightRect,int nBottomRect);
Ellipse()函数用来画椭圆
BOOL CDC::Ellipse(int nLeftRect,int nTopRect,int nRightRect,int nBottomRect);
RoundRect函数用来画圆角矩形
BOOL CDC::RoundRect(int nLeftRect,int nTopRect,int nRightRect,int nBottomRect,int nWidth,int nHeight);
Polygon()函数用来画封闭的任意多边形
BOOL CDC::Polygon(COUST POINT* lpPoints,int cCount);
其中的参数说明与Polylline函数相同,但两个函数有区别,Polygon函数会自动将起点和终点相连形成封闭的多边形
而Polylline函数则画出多条折线,只有当最后一点和起点相同才画出封闭的多边形
示例代码如下:
pDC->Rectangle(190,270,250,310);
pDC->RoundRect(265,270,330,310,30,20);
pDC->Ellipse(210,170,310,230);
POINT polygonPts[3]={{390,160},{430,220},{350,210}};
pDC->Polygon(polygonPts,3);
效果图如下:
- 简单图形编程学习(2)
- 简单图形编程学习
- 简单图形编程的学习(2)---点 (Qt实现)
- 简单图形编程的学习(1)---文字 (Qt实现)
- 简单图形编程的学习(1)---文字 (Qt实现)
- 简单图形编程的学习(2)---点 (small basic实现)
- 简单图形编程的学习(2)---点 (Windows GDI实现)
- 简单图形编程的学习(2)---点 (small basic实现)
- 【Python学习】之 简单图形编程
- Quartz 2D学习(一)简单绘制图形
- Qt的图形绘制简单学习(2)
- 简单图形编程的学习(1)---文字 (small basic实现)
- 简单图形编程的学习(1)---文字 (Windows GDI实现)
- 简单图形编程的学习(1)---文字 (small basic实现)
- 回归游戏的世界,简单图形编程学习的开始
- iPhone图形编程 简单代码
- C#学习笔记:GDI图形高级编程(2)——关于Brush类
- android图形系统编程学习(一)入门
- 在ArcGlobe三维环境中进行数据查询(.net)
- dg主备库切换步骤
- ORB算法
- LongListSelector的Item里使用Image加载网络图片必须注意的问题
- 数据泵IMPDP 导入工具的使用
- 简单图形编程学习(2)
- google 最佳实践 - ListView优化 (Making ListView Scrolling Smooth)
- dwr设置同步
- 开博庆祝贴
- LINQ的Select
- dwr使用手册根据项目整理
- Oracle导入导出
- json 字符串的问题
- 电波的频率波长传输距离传输速率等问题总结