画笔与画刷

CBrush Brush, *pOldBrush;
Brush.CreateSolidBrush(HS_BDIAGONAL, RGB(255, 0, 0));
pOldBrush = pDC ->SelectObject(&Brush);
上面代码的本意是创建画刷,选入设备上下文;遗憾,在创建画刷时错了,参数的个数出了问题,这里和创建画笔不同,创建画笔时要定义三个参数:格式,宽度,颜色;而创建画刷只需定义颜色。

创建画刷,并对其进行自定义
代码
CRect rect;
GetClientRect(rect);
pDC ->SetMapMode(MM_ANISOTROPIC);
pDC ->SetWindowExt(rect.Width(), rect.Height());
pDC ->SetViewportExt(rect.Width()/2, -rect.Height()/2);
pDC ->SetViewportOrg(rect.Width()/2, rect.Height()/2);

rect.OffsetRect(-rect.Width()/2, -rect.Height()/2);

CRect rect1(CPoint(-100, 50), CPoint(100, 100));
CRect rect2(CPoint(-100, -100), CPoint(100, -50));

CBrush Brush(HS_BDIAGONAL,RGB(255, 0, 0));
CBrush *pOldBrush = pDC ->SelectObject(&Brush);

pDC ->FillRect(rect1, &Brush);
pDC ->FillSolidRect(rect2, RGB(255, 0, 0));

pDC ->SelectObject(pOldBrush);

从上面知道画刷的定义与选入
CBrush Brush(HS_BDIAGONAL,RGB(255, 0, 0));
CBrush *pOldBrush = pDC ->SelectObject(&Brush);

时间: 2024-10-10 23:18:26

画笔与画刷的相关文章

计算机图形学(三)_图元的属性_4_线的属性_3_画笔或画刷的选择

画笔或画刷的选择 在有些图形软件包中,尤其是绘画系统,可以直接选择不同的画笔和画刷类型.这种类型的选项包括形状.尺寸和画笔或画刷的图案.图4.7给出了一些可能的画笔和画刷形状.这些形状可以按像素位置的数值形式存储在一个像素模板中,然后再设置到线路径上.例如,矩形画笔可用图4.8给出的模板,通过将模板的中心(或一角)沿线路径移动而实现,如图4.9所示.为了避免在帧缓存中重复设置像素,可以简单地累计在模板的每个位置上生成的水平段,并沿每一条扫描线跟踪起始和终止的x位置. 通过改变模板的尺寸,使用画笔

[游戏模版3] Win32 画笔 画刷 图形

>_<:introduce the functions of define\create\use pen and brush to draw all kinds of line and some graphs. >_<!following 2 files are the same with the previous and file main.cpp has some changes. 1 //{{NO_DEPENDENCIES}} 2 // Microsoft Visual C+

画布.画笔.画刷

canvas 画布 ­ pen 画笔 ­ brush  画刷 ­ 画布对象 ­ 1.moveto(x.y:integer);  开始点 ­ 2.lineto(x.y:integer);  线 ­ 3.rectangle(x1.x2.x2.x3);  方 ­ 4.ellipse(x.y.x1.y1);    圆 ­ 5.textout(x.y:ineger;text:string);  显示文本 ­ 画笔对象 ­ 1.color 颜色 ­ 2.width 宽度 ­ 3.style 风格 ­ sty

(转载)VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)

上一节中鸡啄米主要讲的是画笔CPen的用法,前面也说了,GDI对象中最常用的就是画笔和画刷,本节就讲讲画刷CBrush. 鸡啄米依然是通过实例的方式来说明画刷的用法.此实例要实现的功能是,对话框上有一个按钮控件和一个图片控件,点击按钮弹出颜色对话框,然后在颜色对话框中选择颜色并点击"确定"后,图片控件中将显示选择的颜色. 其实此实例的功能,还可以通过重载对话框WM_CTLCOLOR消息的响应函数等方法来实现,但为讲解画刷的CBrush的使用,鸡啄米采用了下面代码中的方法. 以下是此实例

VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)

上一节中鸡啄米主要讲的是画笔CPen的用法,前面也说了,GDI对象中最常用的就是画笔和画刷,本节就讲讲画刷CBrush. 鸡啄米依然是通过实例的方式来说明画刷的用法.此实例要实现的功能是,对话框上有一个按钮控件和一个图片控件,点击按钮弹出颜色对话框,然后在颜色对话框中选择颜色并点击"确定"后,图片控件中将显示选择的颜色. 其实此实例的功能,还可以通过重载对话框WM_CTLCOLOR消息的响应函数等方法来实现,但为讲解画刷的CBrush的使用,鸡啄米采用了下面代码中的方法. 以下是此实例

qt画刷和画笔

# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #画刷和画笔:QBrush 定义了 QPainter 的填充模式,具有样式.颜色.渐变以及纹理等属性. # 画刷的 style()定义了填充的样式,使用 Qt::BrushStyle 枚举,默认值是 Qt::NoBrush,也就是不进行任何填充. #画刷的 color()定义了填充模式的颜色.这个颜色可以是  Qt  预定义的颜色常量,也就是 # Qt::Globa

GDI+学习笔记(六)渐变画刷

画刷,顾名思义,就是像画刷一样,向设备上绘制,还记得小时候常唱的首歌,"我是一个粉刷匠.." 好吧,跑题了. 本系列博客希望尽可能简单的描述每项功能,而不希望把每个参数都介绍的详详细细,如果需要,请查阅msdn,本节讲述的渐变画刷,主要有两种,一种是叫线性画刷(LinearGradientBrush),还有一种叫路径画刷(PathGradientBrush),我希望以一种尽可能简单的方式去描述它,但能力有限,所以有什么意见,希望各位能帮忙提出,谢谢. (一)使用画刷 上一节中,我们实际

透明画刷的使用

透明画刷的使用代码部分 CRect rect; GetClientRect(rect); pDC ->SetMapMode(MM_ANISOTROPIC); pDC ->SetWindowExt(rect.Width(), rect.Height()); pDC ->SetViewportExt(rect.Width(), -rect.Height()); pDC ->SetViewportOrg(rect.Width()/2, rect.Height()/2); rect.Off

silverlight五种画刷

1.SolidColorBrush(纯色画刷): 2.LinearGradientBrush(线性渐变画刷): 3.RedialGradientBrush(径向渐变画刷): 4.ImageBrush(图像画刷): 5.VideoBrush(视频画刷): silverlight五种画刷,布布扣,bubuko.com