一、使用Path构建复杂图形

Path所构建的图形由Data属性来定义,其属性的类型为Geometry(几何类),通过Path可以构建更加复杂的图形。想创建一个圆环,一种做法是使用两个圆形构建,另一种做法就是使用Path,可以直接绘制出圆环。

<Window x:Class="Creg.ShieldCutterSystem.Window1"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:Creg.ShieldCutterSystem"mc:Ignorable="d"Title="测试" Height="393.174" Width="614.334"><Grid><Grid.ColumnDefinitions><ColumnDefinition/><ColumnDefinition/></Grid.ColumnDefinitions><Canvas><!--使用两个圆形叠加出圆环,但要受到其所有容器的限制--><Ellipse Fill="Blue" Height="200" Canvas.Left="50" Canvas.Top="80" Width="200"/><Ellipse Fill="#FFF9F9F9" Height="120" Canvas.Left="90" Canvas.Top="120" Width="120"/></Canvas><Canvas Grid.Column="1"><Path Fill="Blue"><Path.Data><GeometryGroup><!--Center为圆心的坐标,RadiusX、RadiusY分别为X、Y两轴的半径--><EllipseGeometry RadiusX="100" RadiusY="100" Center="150,180"/><EllipseGeometry RadiusX="60" RadiusY="60" Center="150,180"/></GeometryGroup></Path.Data></Path></Canvas></Grid>
</Window>

运行

由于第一种做法是一种“虚假”的圆环,所以,当给两个圆环所在的Canvas添加背景时,第一种做法的圆环不能出现“镂空”的效果,但第二种可以,为两个Canvas添加如下的背景图片:

 <Canvas.Background><ImageBrush ImageSource="Images/test.jpg"/></Canvas.Background>

运行

参考https://www.cnblogs.com/DragonInSea/archive/2009/06/16/1504417.html/

wpf绘制圆环,实现图片镂空相关推荐

  1. [WPF]WPF中材质制作——图片和矢量图之争

    如果要做下面这样的一个东西作为背景.你会如何做呢? 图1. 目标背景效果 方案一,用PS画出来.然后把这个PNG图片作为背景色.这个方案可以,但是如果想让这个线的颜色可配置呢?如何线的粗细不确定呢?无 ...

  2. WPF绘制光滑连续贝塞尔曲线

    原文:WPF绘制光滑连续贝塞尔曲线 1.需求 WPF本身没有直接把点集合绘制成曲线的函数.可以通过贝塞尔曲线函数来绘制. 贝塞尔曲线类是:BezierSegment,三次贝塞尔曲线,通过两个控制点来控 ...

  3. 在html画一个自动缩放圆环,使用html5 canvas绘制圆环动效

    最近笔者有个需求,需求内容为:一组文字显示在圆环的周围,用户可添加文字,文字围绕着圆环,每个词对应圆环周围的的蓝色小圆点,当用户鼠标放在圆环上方小蓝点时时,实现放射出三角形,再显示出文字,先看看动图效 ...

  4. 使用canvas绘制圆环动效

    最近笔者有个需求,需求内容为:一组文字显示在圆环的周围,用户可添加文字,文字围绕着圆环,每个词对应圆环周围的的蓝色小圆点,当用户鼠标放在圆环上方小蓝点时时,实现放射出三角形,再显示出文字,先看看动图效 ...

  5. WPF绘制自定义窗口

    原文:WPF绘制自定义窗口 WPF是制作界面的一大利器,下面就用WPF模拟一下360的软件管理界面,360软件管理界面如下: 界面不难,主要有如下几个要素: 窗体的圆角 自定义标题栏及按钮 自定义状态 ...

  6. 动态绘制圆环和扇形的源代码

    动态绘制圆环和扇形的源代码可以调节各种相应的属性并且由你根据需要进行扩展. 源文件下载 转载于:https://www.cnblogs.com/vilyLei/articles/1394186.htm ...

  7. 使用OpenGL绘制圆环体(Torus)

    本篇介绍一下使用OpenGL绘制圆环体的方法.程序是在C#和OpenTK环境下编译的. 代码: /// <summary> /// 绘制圆环体 /// </summary> / ...

  8. WPF绘制简单常用的Path

    原文:WPF绘制简单常用的Path 写代码出身的我们经常需要使用一些简单 但是不是规则图形的Path 但限于美工功底有限 不知道怎么去画 下面我告诉大家一些简单的小技巧 用代码来画Path 个人还是比 ...

  9. 图片镂空算法集合[图](转)

    图片镂空算法集合[图](转) 原文:http://www.cnblogs.com/carekee/articles/2179004.html 在开发界面及棋牌游戏过程中,需要很多镂空的图片,而且图片形 ...

最新文章

  1. 1小时学会:最简单的iOS直播推流(七)h264/aac 硬编码
  2. WPF 支持分组互斥的 RadioButton 式单选菜单
  3. 转载CSDN(educast):c# 对两个Datatable的结构相同进行合并
  4. DataFrame 学习笔记
  5. Python 统计一行字符中单词的个数_Python 经典练习题-015
  6. 怎样修改老旧commit的message信息?
  7. php 表单提交文件大小,PHP如何通过表单直接提交大文件详解
  8. winform 统计大量数据重复的元素个数_DAY10——推断统计之概率与概率分布:常见的离散型概率分布...
  9. Word 2010/2013 菜单栏添加 MathType 菜单
  10. MVC过滤器详解 面向切面编程(AOP)
  11. Oracle之:查询锁表,删除锁表
  12. 阿里发布内部(面试官)题库:2022年Java社招岗(正式版)面试题
  13. 双击打开excel内容不显示而显示灰色解决方法
  14. html中table设置滚动条
  15. SQL Prompt v5.2.6
  16. 如何使用 Nmcli 通过 Linux 终端连接到 Wi-Fi
  17. Android R(11)为自定义HIDL接口添加DMFCM(六)
  18. H5打造属于自己的视频播放器(JS篇1)
  19. 外包程序员:软件开发人员派遣进行IT人员驻场开发的好处有哪些?
  20. oracle云简介,Oracle 商务智能云服务器功能简介

热门文章

  1. 如何关闭对Instagram帖子的评论
  2. 海王星股票交易软件测试自学,怎样使用海王星选股器
  3. Idea上传项目到gitee
  4. golang的个人学习笔记以及错题集
  5. python函数中的嵌套函数
  6. mac系统装mysql还是mariadb_Mac安装MariaDB数据库
  7. 学习SAR和INSAR的一点随笔
  8. python读docx文件_python-docx文件定位读取过程(尝试替换)
  9. 【Linux】之对外开放端口
  10. javascript取整方法floor、round、ceil