一、Shape

1. shape作为一个继承自FrameworkElement,与其他的内容控件没什么不同。

2. 继承自Shape的类有以下几种:

Rectangle、Ellipse、Line、Polyline、Polygon、Path

矩形           椭圆    直线     折线        多边形      路径

3. 路径(Path)的Data属性需要一个Geometry几何对象。

Geometry是个抽象类有以下类继承:

LineGeometry-直线

RectangleGeometry-矩形

EllipseGeometry-椭圆

CombineGeometry-联合

PathGeometry-路径(微语言),由一个或多个PathFigure对象构成

PathFigure类包含了StartPoint、Segments、IsClosed、IsFilled四个属性

Segment类包含LineSegment、ArcSegment、BezierSegment、QuadraticBizerSegment、

PolyLineSegment、PolyLineSegment、PolyBezierSegment、PolyQuadraticBizerSegment

StreamGeometry-PathGeometry的只读轻量级(一旦创建不可修改,可以节省内存)

4. PathGeometry可以用来Clip属性裁剪。

二、画刷Brush

1. 在设置颜色时候需要画刷,常见的画刷有以下几种:

SolidColorBrush-单一颜色画刷

LinearGradientBrush-线性渐变画刷

RadialGradientBrush-圆形渐变画刷

ImageBrush-图像画刷

DrawingBrush-图形画刷

VisualBrush-视图画刷

BitmapCacheBrush-位图画刷

三、Transform变换

TranslateTransform-平移变换

RotateTransform-旋转变换

ScaleTransform-缩放变换

SkewTransform-扭曲变换(可以将正方形转换为平行四边形)

MatrixTransform-矩阵变换

TransformGroup-变换组合(上一个变换的结果是下一个变换的输入,因此放置的顺序很重要)

四、图像Drawing

1. GeometryDrawing里面定义了Geometry的细节

主要包含了:GeometryDrawing、ImageDrawing、ViedoDrawing、GlyphRunrawing、DrawingGroup

五、可视化对象Visual

不支持xaml

DrawingVisual dv=new DrawingVisual()

using( DrawingContent dc=dv.RenderOpen() )

{

Pen p=new Pen()

dc.Draw...

}

六、命中测试

HitTestResult

GeometryHitTestResult

七、位图WriteableBitmap

WPF的Shape(形状)、Path(路径)、Drawing(图画)、Visual(可视化对象)相关推荐

  1. WPF中的形状Shape与几何图形Geometry详解

    总目录 文章目录 总目录 一.Shape(形状) 1.Shape基本信息 2.Ellipse 1.案例 2.说明 3.Rectangle 1.案例 2.说明 4.Line 1.案例 2.说明 5.Po ...

  2. matplotlib高级教程之形状与路径——patches和path

    一.什么是形状和路径 在一般的使用matplotlib进行绘图的时候,线形图.条形图.折线图.扇形图等等都是我们常见的一些绘图函数,但是有时候我们需要绘制一些特殊的形状和路径,比如我们要绘制一个椭圆, ...

  3. SVG矢量绘图 path路径详解(基本画法)

    SVG的形状标签里,path是最强大的一个,掌握了path就足够处理常见的绘图问题了. 先看一下path标签的基本用法: <path d="M100,100 L200,200 L200 ...

  4. 自定义View,和Canvas(画布),Paint(画笔),Path(路径)的用法

    重点 怎么自定义控件,Canvas画布,Paint画笔,Path路径的使用 首先为什么要自定义View: 在Android开发中有很多业务场景,原生的控件是无法满足应用,并且经常也会遇到一个UI在多处 ...

  5. ps制作台式计算机图标,Photoshop:利用PATH(路径)制作图标

    其一.制作一轮弯月.这是PATH的最基本用法,同时也可以得到相当好的图标. 具体步骤如下: 1.启动Adobe/Photoshop/Photoshop5.0 2.新建图象.执行Files/New.输入 ...

  6. 三个绘图工具类详解Paint(画笔)Canvas(画布)Path(路径)

    1)Paint(画笔): 就是画笔,用于设置绘制风格,如:线宽(笔触粗细),颜色,透明度和填充风格等 直接使用无参构造方法 就可以创建Paint实例: Paint paint = new Paint( ...

  7. Android Shape 形状

    Shape继承体系: Shape (android.graphics.drawable.shapes) ----PathShape (android.graphics.drawable.shapes) ...

  8. sudo找不到命令:修改sudo的PATH路径

    sudo有时候会出现找不到命令,而明明PATH路径下包含该命令,让人疑惑.其实出现这种情况的原因,主要是因为当 sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置,当然这主要是因 ...

  9. 修改系统路径 linux,Linux修改sudo的PATH路径的解决方法

    众所周知,Linux系统sudo命令可以搜索PATH下的命令,但是有时候明明PATH下有某些命令,为什么sudo就是搜索不到.这可能是因为Linux自动对PATH进行重置,改变了sudo命令搜索的路径 ...

最新文章

  1. 机器人技术推动工业领域的数字革命
  2. Reverse Integer
  3. 2017 ACM/ICPC Asia Regional Xian Online 记录
  4. 亿能 性能测试课程 2013年度 公开课 深圳站
  5. 旷视 CVPR 2021 论文解读直播来喽!
  6. wxWidgets:wxAuiManager类用法
  7. iTerm2 保存日志
  8. b类 蚂蚁金服_股权设计与合伙制,解析蚂蚁金服与华为的顶层结构
  9. FAT和EXFAT文件系统
  10. 第一百二十六期:代码以外的生存之道,献给每位入了坑的码农
  11. git 提示error setting certificate verify locations 解决方案
  12. python之路--day10-闭包函数
  13. mysql 1236错误_MySQL主主同步环境出现1236错误
  14. matlab_exercise(2)----输入一个三位数,依次输出其个位数字,十位数字,百位数字...
  15. Symmetric Tree
  16. abaqus帮助文档html,2534-VUMAT用户子程序翻译ABAQUS帮助手册.doc
  17. HDU 4460 Friend Chains(map + spfa)
  18. Python随机生成一注双色球彩票
  19. echarts 日历图calender
  20. 写大论文的一些注意事项

热门文章

  1. 【开发心得】electron iohook集成使用方案
  2. android 专业密码键盘,Android仿支付宝、京东的密码键盘和输入框
  3. Adobe Photoshop CS5永久序列号
  4. Java二维码编码识别
  5. Parallels Desktop | 在 Mac 里装 Windows 的最佳工具。
  6. 市场营销工作重中之重——提升工作效率
  7. System.setOut(ps)重定义了输出流后,如何重定向控制台输出
  8. 台式计算机usb口不识别鼠标,如何解决插入鼠标提示无法识别USB设备的问题
  9. 分布式光伏站远程监控组网解决方案
  10. gii无法访问 yii2_yii框架中无法访问gii