随笔 - 705  文章 - 0  评论 - 1103  阅读 - 138万 

多边形

若要绘制多边形需要用到Polygon元素,并通过定义一系列的点绘制多边形Polygon类型的对象有Points属性, 这个属性用来定义组成边的点集。在前台代码中,使用空格分隔各个点,然后利用逗号分隔坐标点来定义点坐标。不必为了将起点和终点指定为相同的值而声明闭合点,Polygon类假设要定义闭合形状,并且会自动将终点与起点连起来。下面将演示如何绘制一个多边形。

在一个打开的Windows应用商店项目中新建一个空白页,并命名为PolygonPage,双击打开此页面的PolygonPage.xaml文件,在Grid元素中添加如下代码。

<Polygon Fill="Red" Points="70,100 10,200 210,200 100,100" />

上面的代码使用Polygon控件的Points属性设置多边形的4个顶点坐标分别为 (70,100)、(10,200)、(210,200)和(100,100),接着使用Red给Fill属性赋值,从而绘制一个填充颜色为红色的多边形。没有对Stroke属性赋值,以便它没有外围轮廓

接下来介绍使用后台代码绘制多边形。与前台代码不一样的是,后台代码需要使用 PointCollection类型的对象存放各个点,接着将每个点作为一个Point对象添加到集合中,然后把集合对象的值赋值给Points属性,这样便可以绘制与前台一样的多边形。代码如下所示:

public PolygonPage()

{

this.InitializeComponent();

Polygon polygon = new Polygon();

polygon.Fill = new SolidColorBrush(Colors.Red);

//实例化一个pointCollenction的对象

PointCollection points = new PointCollection();

//添加点

points.Add(new Point(70, 100));

points.Add(new Point(10, 200));

points.Add(new Point(210, 200));

points.Add(new Point(100, 100));

//设置polygon的点

polygon.Points = points;

MyCanvas.Children.Add(polygon);

}

在上面的代码中,首先实例化一个Polygon类型的对象polygon,设定Stroke属性为红色,接着定义存放点集的PointCollection类型的points对象,利用points对象的Add属性添加四个点,然后把points赋值给polygon对象的Points属性,这样便可以绘制一个与前台方式实现效果一致的多边形,最后调用MyCanvas容器对象的Children属性中的Add方法,将这个多边形加入到页面中显示。

运行此页面,绘制多边形的效果如图8-5所示。

图8-5 简单的多边形

posted on   冯瑞涛  阅读(464)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
历史上的今天:
2011-03-30 Android 常用布局 Layout 和 组件编写
2009-03-30 WCF 一步一步从入门到精通(一)建立一个简单入门的例子(适合一点不会的朋友阅读)
点击右上角即可分享
微信分享提示