当前位置: 首页 > 编程日记 > 正文

WPF入门(三)-几何图形之不规则图形(PathGeometry) (2)

WPF入门(三)->几何图形之不规则图形(PathGeometry) (2)
原文:WPF入门(三)->几何图形之不规则图形(PathGeometry) (2)

上一节我们介绍了PathGeometry中LineSegment是点与点之间绘制的一条直线,那么我们这一节来看一下点与点之间绘制曲线ArcSegment

先来看一段代码

<Window x:Class="WPF.SimpleGraph.PathFill.Window1"
        xmlns
="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x
="http://schemas.microsoft.com/winfx/2006/xaml"
        Title
="Window1" Height="300" Width="300">
    
<Canvas>
        
<Path Stroke="DarkGray" StrokeThickness="2">
            
<Path.Data>
                
<PathGeometry>
                    
<PathFigure StartPoint="40,40" IsClosed="True">
                        
<LineSegment Point="40,130"></LineSegment>
                        
<ArcSegment Point="60,150" Size="20,20" ></ArcSegment>
                        
<LineSegment Point="200,150"></LineSegment>
                        
<ArcSegment Point="220,130" Size="20,20"></ArcSegment>
                        
<LineSegment Point="220,40"></LineSegment>
                        
<ArcSegment Point="200,20" Size="20,20"></ArcSegment>
                        
<LineSegment Point="60,20"></LineSegment>
                        
<ArcSegment Point="40,40" Size="20,20"></ArcSegment>
                    
</PathFigure>
                
</PathGeometry>
            
</Path.Data>
        
</Path>
    
</Canvas>
</Window>

执行结果:

其中ArcSegment表示一条点到点之间的曲线

例如该代码它

<PathFigure StartPoint="40,40" IsClosed="False">
                        
<ArcSegment Point="40,80" Size="20,20" ></ArcSegment>
                    
</PathFigure>

它的效果是从点(40,40)到点(40,80)之间绘制一条曲线

ArcSegment的Size属性表示该曲线的弧度及形状,详细弧度与值的关系请查考msdn

<LineSegment Point="40,130"></LineSegment>
<ArcSegment Point="60,150" Size="20,20" ></ArcSegment>

该代码表示画一条从StartPoint到40,130的直线,再从40,130到60,150的曲线

依次类推,我们便可画出一个弧形角的矩形。

posted on 2019-01-11 14:12 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/10254872.html

相关文章:

zookeeper图形工具——zkui

虽然zookeeper安装包提供了客户端工具zkcli&#xff0c;但是命令特别少 &#xff0c;每次想看看里面的节点信息特别费劲。 幸好有图形工具——zkui&#xff0c;https://github.com/echoma/zkui&#xff0c;下载地址 https://github.com/echoma/zkui/wiki/Download。 上个图&…

第一篇博客,java学生管理系统(挑战全网最全)

java学生信息管理系统&#xff0c;&#xff08;课设必备&#xff09;&#xff0c;附有源码和简版链接 博主虽然技术不高&#xff0c;但是系统写的真的是没话说&#xff0c;留着开学java课设用了。 直接转载链接了&#xff0c;查看系统入口 https://blog.csdn.net/weixin_4341…

ccna实验大全

ccna实验大全启动接口&#xff0c;分配IP地址&#xff1a; router> router> enable router# router# configure terminal router(config)# router(config)# interface Type Port router(config-if)# no shutdown router(config-if)# ip address IP-Address Subnet-Mask r…

实现分布式服务注册及简易的netty聊天

现在很多地方都会用到zookeeper, 用到它的地方就是为了实现分布式。用到的场景就是服务注册&#xff0c;比如一个集群服务器&#xff0c;需要知道哪些服务器在线&#xff0c;哪些服务器不在线。 ZK有一个功能&#xff0c;就是创建临时节点&#xff0c;当机器启动应用的时候就会…

《深入理解计算机系统》学习心得二:关于show-bytes的 学习

此段代码&#xff0c;使用强制类型转换来访问和打印不同程序对象的字节表示。show-bytes打印出每个以十六进制表示的字节。 /* show-bytes - prints byte representation of data */ /* $begin show-bytes */ #include <stdio.h> /* $end show-bytes */ #include <st…

Jquery基础:append、prepend、after、before、appendTo的区别

append() 是在被选元素的结束标签前面(即改被选元素的内部)插入指定内容。 <html><head><script type"text/javascript" src"/jquery/jquery.js"></script><script type"text/javascript">      $().ready(…

域名删除时间及whois状态说明

国际域名状态 Active : 正常状态&#xff1b; Registry-hold&#xff1a;注册局暂停&#xff0c;域名没有解析&#xff0c;不能正常使用&#xff0c;可以续费&#xff1b; Registry-lock&#xff1a;注册局锁定&#xff0c;域名有解析&#xff0c;正常使用&#xff0c;不能更改…

JavaScript中的正则表达式解析

正则表达式(regular expression)对象包含一个正则表达式模式(pattern)。它具有用正则表达式模式去匹配或代替一个字符串(string)中特定字符(或字符集合)的属性(properties)和方法(methods)。 要为一个单独的正则表达式添加属性,可以使用正则表达式构造函数(constructor functio…

Markdown上下标内容多于一项

用{ }括起来。转载于:https://www.cnblogs.com/144823836yj/p/10261391.html

详述FileUpload 控件上传单文件

第一步&#xff1a;添加两个Label控件&#xff0c;一个是用于标题显示&#xff0c;一个是用于上传完成消息提示。 第二步&#xff1a;创建一个FileUpload控件到Page页面&#xff0c;注意FileUpload控件本身只提供文件的选举操作&#xff0c;而实际的文件上传功能需要我们创建一…

基于μC/OS—III的CC1120驱动程序设计

基于μC&#xff0f;OS—III的CC1120驱动程序设计 时间&#xff1a;2014-01-21 来源&#xff1a;电子设计工程 作者&#xff1a;张绍游&#xff0c;张贻雄&#xff0c;石江宏关键字&#xff1a;CC1120 嵌入式操作系统 STM32F103ZE 驱动设计 摘要&#xff1a;本文根据实…

LinkQueue的基本创建

队列是一种先进先出&#xff08;first in first out,缩写为FIFO&#xff09;的线性表。它只允许在表的一端进行插入&#xff0c;而在另一端进行删除元素。和平常我们排队打饭类似。 链队列是用链表表示的队列的简称。一个链队列需要两个分别指示队头和队尾的指针&#xff08;分…

请教一个算法问题,有两个数组A,B,判断A中是否至少有一个元素和B中元素相同...

最笨的办法当然是二层嵌套循环&#xff0c;但觉得应该有更好的方法&#xff0c;但是着实想不出来&#xff0c;想听听大家的意见&#xff0c;大家帮帮小弟 i.e string[] A{"X","Y","Z","W"}; string[] B{"X","E",&…

超市账单管理系统之-------登录

报500的错大部分都是springmvc的jar包没有导对&#xff0c;最好用3点几的版本 。。。。在项目中要把包导对 pom.xml 所需要的jar包 1 <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"2 xs…

进制转换converse

栈和队列是在软件设计中常用的两种数据结构&#xff0c;它们的逻辑结构和线性表相同。 其特点在于运算受到了限制&#xff1a;栈按“后进先出”的规则进行操作&#xff0c;队按“先进先出”的规则进行操作&#xff0c;故称运算受限制的线性表。 从数据类型的角度看: 它们和线…

40.多进程同步--锁--多把锁

多进程同步 首先多进程默认是并发行为&#xff0c;多个进程同时执行执行的顺序&#xff0c;以及何时执行完毕无法控制 多个进程如果涉及到了通信&#xff0c;数据的有序性无法保证需要锁来控制进程之间执行的顺序对于进程资源的控制缺点&#xff1a;同步进程&#xff0c;并发没…

.net导出到Excel与Word中(带上下标)

//输出到excel的函数,可直接copy到 cs页面privatevoidOutExcel(GridView dg, stringname) { dg.Visible true; Response.Clear(); Response.Buffer true; Response.Charset "GB2312"; name "attachment;filename&quo…

越来越不想写代码了

越来越不想写代码了今天刚下载了PD12版本&#xff0c;做了一个需求分析以及试用了几个新功能在对C&#xff03;支持的情况。感觉非常不错&#xff0c;特别是在代码生成方面&#xff0c;比我想的要好多了&#xff0c;而且比起其它语言的代码生成&#xff0c;好像就是对C&#xf…

【代码笔记】Web-CSS-CSS id和Class选择器

一&#xff0c;效果图。 二&#xff0c;代码。 <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>CSS id和class选择器</title> <style> #para1 { text-align: center; color: red; } .center { text-align: …

javascript取得鼠标的位置

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns"http://www.w3.org/1999/xhtml"><head><title>JavaScript得到鼠标坐标<…

nginx缓存功能的设置

首先用的缓存是proxy_cache. 在http段里加入下列几句&#xff1a; [plain] view plaincopy proxy_connect_timeout 5; proxy_read_timeout 60; proxy_send_timeout 5; proxy_buffer_size 16k; proxy_buffers 4 64k; proxy_busy_buffers_size 128k; proxy_tem…

线性表List的基本创建

#include <iostream> using namespace std; #include <malloc.h> #include <stdio.h> #define TURE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define IINFEASIBLE -1 #define OVERFLOW -2 typedef int Status; /*类型名定义用status代替int;Sta…

点点看   只有想不到没有看不到

看了这些好看的图片&#xff0c;不禁也想把自己看到的图片与大家一起分享了&#xff01;[url]http://mm-nn.com.cn/MM[/url]网[url]http://haotupic.cn/[/url]好图片网[url]http://www.picguan.cn/[/url]美女图片馆[url]http://www.nvyoou.cn/[/url]女友网[url]http://www.soft…

二叉树的基本应用知识总结

#include <iostream> using namespace std; #include <malloc.h> #include <stdio.h> #define TURE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define IINFEASIBLE -1 #define OVERFLOW -2#define MAX_TREE_SIZE 100//二叉树的最大结点数 typedef ch…

JS原生选项卡 – 幻灯片效果

1 <!DOCTYPE HTML>2 <html>3 <head>4 <meta charset"utf-8">5 <title>JS实现幻动片选项卡</title>6 </head>7 <style>8 .container{9 text-align:center; 10 width:100%; 11 } 12 13 .ppt{ …

MSSQL 2008里事务的一个问题

今天在试MSSQL2008里的事务&#xff0c;发现如果事务中某条语句的表名错误&#xff0c;就无法用error或try回滚&#xff0c;具体如下&#xff1a;begin tran delete from test where id 5 --正确语句 dealete from testa where id1 4 --表名错误&#xff0c;testa 表…

避免在JSP中写java代码

作者&#xff1a;蜗牛学院CTO李懿老师 ​自从十年前的taglibs&#xff08;如JSTL&#xff09;和EL&#xff08;表达语言&#xff0c;这些事情&#xff09;诞生以来&#xff0c;在JSP中使用scriptlet&#xff08;<% %>这些东西&#xff09;的确是非常不鼓励的。 小脚本的主…

爱情也许是最忧伤的童话

也许爱情是一部忧伤的童话 惟其遥远与真实 惟其不可触摸与欠缺 方可成就起璀璨与神圣 或许&#xff0c;只有在难得最远的时候&#xff0c; 才能把曾经走过的那段日子 看得最真切、最清楚 放弃一个很爱你的人&#xff0c;并不痛苦 放弃一个你很爱的人&#xff0c;那才痛苦 爱…

Docker最全教程——从理论到实战(六)

Docker最全教程——从理论到实战&#xff08;六&#xff09; 原文:Docker最全教程——从理论到实战&#xff08;六&#xff09;托管到腾讯云容器服务 托管到腾讯云容器服务&#xff0c;我们的公众号“magiccodes”已经发布了相关的录屏教程&#xff0c;大家可以结合本篇教程一起…

c#中分割字符串的几种方法

第一种方法&#xff1a;打开vs.net新建一个控制台项目。然后在Main()方法下输入下面的程序。 string s"abcdeabcdeabcde"; string[] sArrays.Split(c); foreach(string i in sArray) Console.WriteLine(i.ToString()); 输出下面的结果:ab deab deab de 我们看到了结果…