文档章节

WinAPI: CreatePolygonRgn - 建立多边形区域

涂孟超
 涂孟超
发布于 2014/09/26 15:33
字数 153
阅读 2
收藏 0
本例效果图:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    procedure FormPaint(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormPaint(Sender: TObject);
var
  ps: array[0..9] of TPoint;
  Rgn: HRGN;
begin
  ps[0] := Point(120, 5);
  ps[1] := Point(140, 70);
  ps[2] := Point(210, 70);
  ps[3] := Point(150, 100);
  ps[4] := Point(180, 175);
  ps[5] := Point(120, 120);
  ps[6] := Point(60, 175);
  ps[7] := Point(90, 100);
  ps[8] := Point(30, 70);
  ps[9] := Point(100, 70);

  {建立多边形区域}
  Rgn := CreatePolygonRgn(ps, Length(ps), WINDING);

  {填充区域}
  Canvas.Brush.Color := clSilver;
  Canvas.Brush.Style := bsCross;
  FillRgn(Canvas.Handle, Rgn, Canvas.Brush.Handle);

  {绘制区域边界}
  Canvas.Brush.Color := clRed;
  Canvas.Brush.Style := bsSolid;
  FrameRgn(Canvas.Handle, Rgn, Canvas.Brush.Handle, 2, 2);
  DeleteObject(Rgn);
end;

end.

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/05/26/1207768.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
【Visual C++】游戏开发笔记之四——游戏画面绘图(一)基本图形绘制

本系列文章由zhmxy555编写,转载请注明出处。 http://blog.csdn.net/zhmxy555/article/details/7333886 作者:毛星云 邮箱: happylifemxy@qq.com 欢迎邮件交流编程心得 从本篇文章开始笔锋一...

长平狐
2012/11/12
115
0
iOceanPlus/Module_Qt_Geography

Qt_Geography 项目类关系图见下: 功能1:地理多边形 封装Qt的QGeoCircle、QGeoRectangle和QPolygonF类,成为地理多边形、地理圆形和地理矩形,共同的基类为MyQtGeoShapeBase。 提供一个常用功...

iOceanPlus
2017/01/17
0
0
ArcGIS实用制图技巧——如何制作“粉饰”效果

现在讲解粉饰效果的制作方法,这在ArcMap当中对于想要重点突出区域以外的多边形,符号化时使用白色填充和透明度的效果即可实现。 左侧地图的图形背景组织很差。右侧地图通过使用粉饰效果突出...

长平狐
2012/11/28
208
0
PhotoShop CC 2017软件工具面板使用---索套工具

  套索工具包含了套索工具,多边形套索工具和磁性套索工具 索套工具   套索工具用于手绘选区,快捷键为L   套索工具和选框工具的区别:套索工具是能选不规则图形的选框工具 多边形索套...

zxc514257857
2017/11/12
0
0
OpenGL绘图实例:直线、颜色填充与鼠标响应

Bresenham直线生成算法 在数学上,直线是没有宽度的、由无数个点构成的集合。对直线进行光栅化,就是在显示器所给定的有限个像素矩阵中,确定最佳逼近于该直线的一组像素。在本次实验中,我采...

初雪之音
2016/03/08
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

OSX | SafariBookmarksSyncAgent意外退出解决方法

1. 启动系统, 按住⌘-R不松手2. 在实用工具(Utilities)下打开终端,输入csrutil disable, 然后回车; 你就看到提示系统完整性保护(SIP: System Integrity Protection)已禁用3. 输入reboot回车...

云迹
今天
4
0
面向对象类之间的关系

面向对象类之间的关系:is-a、has-a、use-a is-a关系也叫继承或泛化,比如大雁和鸟类之间的关系就是继承。 has-a关系称为关联关系,例如企鹅在气候寒冷的地方生活,“企鹅”和“气候”就是关...

gackey
今天
4
0
读书(附电子书)|小狗钱钱之白色的拉布拉多

关注公众号,在公众号中回复“小狗钱钱”可免费获得电子书。 一、背景 之前写了一篇文章 《小狗钱钱》 理财小白应该读的一本书,那时候我才看那本书,现在看了一大半了,发现这本书确实不错,...

tiankonguse
今天
4
0
Permissions 0777 for ‘***’ are too open

异常显示: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ......

李玉长
今天
5
0
区块链10年了,还未落地,它失败了吗?

导读 几乎每个人,甚至是对通证持怀疑态度的人,都对区块链的技术有积极的看法,因为它有可能改变世界。然而,区块链技术问世已经10年了,我们仍然没有真正的用上区块链技术。 几乎每个人,甚...

问题终结者
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部