WEB开发网
开发学院图形图像Flash Silverlight(7) - 2.0图形之Ellipse, Line, Path,... 阅读

Silverlight(7) - 2.0图形之Ellipse, Line, Path, Polygon, Polyline, Rectangle

 2008-11-14 11:50:42 来源:WEB开发网   
核心提示: 3、Path.xaml<UserControl x:Class="Silverlight20.Shape.Path"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

3、Path.xaml

<UserControl x:Class="Silverlight20.Shape.Path"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <StackPanel HorizontalAlignment="Left">
    
    <!--绘制一系列相互连接的直线和曲线-->
    
    <!--
    Path.Data - 要绘制的形状的 Geometry
    -->
    <Path Fill="Yellow" Stroke="Red" StrokeThickness="6">
      <Path.Data>
        <!--椭圆-->
        <!--
        Center - 原点坐标
        RadiusX - X轴半径
        RadiusY - Y轴半径
        -->
        <EllipseGeometry Center="50,25" RadiusX="50" RadiusY="25" />
      </Path.Data>
    </Path>
  
    <Path Fill="Yellow" Stroke="Red" StrokeThickness="6">
      <Path.Data>
        <!--矩形-->
        <!--
        Rect - 矩形的点坐标,分别为:左侧线的X轴坐标,上侧线的Y轴坐标,矩形宽,矩形高
        -->
        <RectangleGeometry Rect="100,0,100,50" />
      </Path.Data>
    </Path>
  
    <Path Stroke="Red" StrokeThickness="6" >
      <Path.Data>
        <!--线-->
        <!--
        StartPoint - 起点坐标
        EndPoint - 终点坐标
        -->
        <LineGeometry StartPoint="200,0" EndPoint="300,100" />
      </Path.Data>
    </Path>
    
    <Path Stroke="Red" StrokeThickness="6">
      <Path.Data>
        <!--一个可能由弧、曲线、椭圆、直线和矩形组成的复杂图形-->
        <PathGeometry>
          <PathGeometry.Figures>
            <!--
            StartPoint - 图形起点坐标
            -->
            <PathFigure StartPoint="300,0">
              <!--
              PathFigure.Segments - 待画线的类型
              -->
              <PathFigure.Segments>
                <PathSegmentCollection>
                  <!--
                  LineSegment - 单一线段
                  PolyLineSegment - 线段集合
                  ArcSegment - 弧(椭圆的一部分)
                  BezierSegment - 两点之间的一条三次贝塞尔曲线
                  QuadraticBezierSegment - 两点之间的一条二次贝塞尔曲线
                  PolyBezierSegment - 一条或多条三次贝塞尔曲线
                  PolyQuadraticBezierSegment - 一条或多条二次贝塞尔曲线
                  -->   
                  <!--
                  Size - 弧的X轴和Y轴半径
                  Point - 该Segment的终点坐标,下一个Segment的起点坐标
                  -->
                  <ArcSegment Size="100,50" Point="400,100" />
                  <!--
                  Point - 该Segment的终点坐标,下一个Segment的起点坐标
                  -->
                  <LineSegment Point="500,200" />
                </PathSegmentCollection>
              </PathFigure.Segments>
            </PathFigure>
          </PathGeometry.Figures>
        </PathGeometry>
      </Path.Data>
    </Path>
  
    <Path Fill="Yellow" Stroke="Red" StrokeThickness="6">
      <Path.Data>
        <!--一个或多个Geometry-->
        <!--
        FillRule - 填充规则 [System.Windows.Media.FillRule枚举]
          EvenOdd 和 Nonzero,详见MSDN
        -->
        <GeometryGroup FillRule="EvenOdd">
          <LineGeometry StartPoint="200,0" EndPoint="300,100" />
          <EllipseGeometry Center="250,50" RadiusX="50" RadiusY="50" />
          <RectangleGeometry Rect="200, 0, 100, 100" />
        </GeometryGroup>
      </Path.Data>
    </Path>
    
  </StackPanel>
</UserControl>

Tags:Silverlight 图形 Ellipse

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接