自制画刷

书名:WPF专业编程指南
作者:李应保
出版社:电子工业出版社
出版时间:2010-01
ISBN:9787121100116


一、圆形梯度画刷

  • (RadialGradientBrush)
    RadialGadientBrush需要说明圆心坐标,及X方向和Y方向的半径:GradientOrigin、Center、RadiusX和RadiusY的值:

二、自制画刷

  • (DrawingBrush)
    自己创建一种任意图形的画刷
    各种标准符号,如变压器、开关等

一个变压器自制画刷

  <Window x:Class="Yingbao.Chapter5.TransformerDrawingBrush"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      Title="Yingbao.Chapter5" Height="300" Width="300">
      <Grid>
      <Rectangle Width="200" Height="200" Stroke="Blue"
                  StrokeThickness="2">
        <Rectangle.Fill>
          <DrawingBrush  Viewport ="0.1,0.1,0.5,0.5" >
            <DrawingBrush.Drawing>
                <DrawingGroup>
                <DrawingGroup.Children>
                  <GeometryDrawing Brush="White">
                    <GeometryDrawing.Geometry>
                      <GeometryGroup>
                        <EllipseGeometry Center="50,40"
                              RadiusX="45" RadiusY="45"/>
                        <EllipseGeometry Center="50,100"
                              RadiusX="45" RadiusY="45"/>
                        <LineGeometry StartPoint="50,20"
                              EndPoint="30,40" />
                        <LineGeometry StartPoint="50,20"
                              EndPoint="70,40" />
                        <LineGeometry StartPoint="30,40"
                              EndPoint="70,40" />
                        <LineGeometry StartPoint="50,100"
                              EndPoint="50,120" />
                        <LineGeometry StartPoint="50,100"
                              EndPoint="30,90" />
                        <LineGeometry StartPoint="50,100"
                              EndPoint="70,90" />
                      </GeometryGroup>
                    </GeometryDrawing.Geometry>
                    <GeometryDrawing.Pen>
                      <Pen Thickness="2" Brush="Black" />
                    </GeometryDrawing.Pen>
                  </GeometryDrawing>
                </DrawingGroup.Children>
                </DrawingGroup>
            </DrawingBrush.Drawing>
          </DrawingBrush>
        </Rectangle.Fill>
      </Rectangle>
      </Grid>
  </Window>
  • 在这段XAML里,创建了一个变压器自制画刷,并把这个画刷作为矩形的填充属性(这和前面把SolidColorBrush作为矩形的填充属性是一样的)。


    图5-11 用自制画刷(DrawingBrush)创建的变压器画刷
  • 上述XAML代码,创建了一个一边是三角形接法、一边是星形接法的变压器符号。需要指出的是由于这个变压器符号是一个画刷,故可以用这个画刷来绘制任何区域!

三、粘贴模式(TileMode)

  • 自制画刷支持五种粘贴模式,这类似于装修房子时贴地板砖。
  • 这五种模式是:none、Tile、FlipX、FlipY、FlipXY。

四、伸展方式(Stretch)

  • 自制画刷还有一个伸展方式的属性,其取值为none、Fill、Uniform及UniformToFill。
    它用来控制画刷用什么样的方式在所绘制的区域伸展
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 10,364评论 0 13
  • 书名:WPF专业编程指南作者:李应保出版社:电子工业出版社出版时间:2010-01ISBN:97871211001...
    大龙10阅读 56评论 0 7
  • 根据高、低压绕组线电势相位差,确定联结组别的标号。 Yy联结的三相变压器,共有Yy0、Yy4、Yy8、Yy6、Yy...
    祁雷阅读 2,522评论 0 0
  • 直流电机的基本原理(第一、第二章) 1.直流与交流 : 从直流电动机外部看,电机电刷两端的电压、电流和电动势都...
    Myosotis_阅读 2,211评论 0 1
  • 从零学运放—11运放干扰和静电处理 干扰和静电平时是碰不到的,但是一旦碰到了由于没有经验所以不知道怎么处理。像静电...
    宜居远控阅读 4,825评论 0 4

友情链接更多精彩内容