PolyQuadraticBezierSegment 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示一系列二次贝塞尔线段。
public ref class PolyQuadraticBezierSegment sealed : System::Windows::Media::PathSegment
public sealed class PolyQuadraticBezierSegment : System.Windows.Media.PathSegment
type PolyQuadraticBezierSegment = class
inherit PathSegment
Public NotInheritable Class PolyQuadraticBezierSegment
Inherits PathSegment
- 继承
-
PolyQuadraticBezierSegment
示例
以下示例演示如何使用 PolyQuadraticBezierSegment 创建两个二次贝塞尔曲线段。
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<Canvas>
<Path Stroke="Black" StrokeThickness="1">
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigureCollection>
<!-- The StartPoint specifies the starting point of the first curve. -->
<PathFigure StartPoint="10,100">
<PathFigure.Segments>
<PathSegmentCollection>
<!-- The PolyQuadraticBezierSegment specifies two Bezier curves.
The first curve is from 10,100 (start point specified above)
to 300,100 with a control point of 200,200. The second curve
is from 200,200 (end of the last curve) to 30,400 with a
control point of 0,200. -->
<PolyQuadraticBezierSegment Points="200,200 300,100 0,200 30,400" />
</PathSegmentCollection>
</PathFigure.Segments>
</PathFigure>
</PathFigureCollection>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
</Canvas>
</StackPanel>
</Page>
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Shapes;
namespace SDKSample
{
public partial class PolyQuadraticBezierSegmentExample : Page
{
public PolyQuadraticBezierSegmentExample()
{
// Create a PathFigure to be used for the PathGeometry of myPath.
PathFigure myPathFigure = new PathFigure();
// Set the starting point for the PathFigure specifying that the
// geometry starts at point 10,100.
myPathFigure.StartPoint = new Point(10, 100);
// Create a PointCollection that holds the Points used to specify
// the points of the PolyQuadraticBezierSegment below.
PointCollection myPointCollection = new PointCollection(4);
myPointCollection.Add(new Point(200, 200));
myPointCollection.Add(new Point(300, 100));
myPointCollection.Add(new Point(0, 200));
myPointCollection.Add(new Point(30, 400));
// The PolyQuadraticBezierSegment specifies two Bezier curves.
// The first curve is from 10,100 (start point specified above)
// to 300,100 with a control point of 200,200. The second curve
// is from 200,200 (end of the last curve) to 30,400 with a
// control point of 0,200.
PolyQuadraticBezierSegment myBezierSegment = new PolyQuadraticBezierSegment();
myBezierSegment.Points = myPointCollection;
PathSegmentCollection myPathSegmentCollection = new PathSegmentCollection();
myPathSegmentCollection.Add(myBezierSegment);
myPathFigure.Segments = myPathSegmentCollection;
PathFigureCollection myPathFigureCollection = new PathFigureCollection();
myPathFigureCollection.Add(myPathFigure);
PathGeometry myPathGeometry = new PathGeometry();
myPathGeometry.Figures = myPathFigureCollection;
// Create a path to draw a geometry with.
Path myPath = new Path();
myPath.Stroke = Brushes.Black;
myPath.StrokeThickness = 1;
// specify the shape (quadratic Bezier curve) of the path using the StreamGeometry.
myPath.Data = myPathGeometry;
// Add path shape to the UI.
StackPanel mainPanel = new StackPanel();
mainPanel.Children.Add(myPath);
this.Content = mainPanel;
}
}
}
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Media
Imports System.Windows.Shapes
Namespace SDKSample
Partial Public Class PolyQuadraticBezierSegmentExample
Inherits Page
Public Sub New()
' Create a PathFigure to be used for the PathGeometry of myPath.
Dim myPathFigure As New PathFigure()
' Set the starting point for the PathFigure specifying that the
' geometry starts at point 10,100.
myPathFigure.StartPoint = New Point(10, 100)
' Create a PointCollection that holds the Points used to specify
' the points of the PolyQuadraticBezierSegment below.
Dim myPointCollection As New PointCollection(4)
myPointCollection.Add(New Point(200, 200))
myPointCollection.Add(New Point(300, 100))
myPointCollection.Add(New Point(0, 200))
myPointCollection.Add(New Point(30, 400))
' The PolyQuadraticBezierSegment specifies two Bezier curves.
' The first curve is from 10,100 (start point specified above)
' to 300,100 with a control point of 200,200. The second curve
' is from 200,200 (end of the last curve) to 30,400 with a
' control point of 0,200.
Dim myBezierSegment As New PolyQuadraticBezierSegment()
myBezierSegment.Points = myPointCollection
Dim myPathSegmentCollection As New PathSegmentCollection()
myPathSegmentCollection.Add(myBezierSegment)
myPathFigure.Segments = myPathSegmentCollection
Dim myPathFigureCollection As New PathFigureCollection()
myPathFigureCollection.Add(myPathFigure)
Dim myPathGeometry As New PathGeometry()
myPathGeometry.Figures = myPathFigureCollection
' Create a path to draw a geometry with.
Dim myPath As New Path()
myPath.Stroke = Brushes.Black
myPath.StrokeThickness = 1
' specify the shape (quadratic Bezier curve) of the path using the StreamGeometry.
myPath.Data = myPathGeometry
' Add path shape to the UI.
Dim mainPanel As New StackPanel()
mainPanel.Children.Add(myPath)
Me.Content = mainPanel
End Sub
End Class
End Namespace
注解
使用此类可以指定点集合以创建多个二次贝塞尔曲线段。 使用 时,只能指定两个 QuadraticBezierSegment点来创建单个二次贝塞尔曲线段。
构造函数
PolyQuadraticBezierSegment() |
初始化 PolyQuadraticBezierSegment 类的新实例。 |
PolyQuadraticBezierSegment(IEnumerable<Point>, Boolean) |
使用指定的 PolyQuadraticBezierSegment 对象集合和一个指定是否为线段描边的值,来初始化 Point 类的一个新实例。 |
字段
PointsProperty |
标识 Points 依赖项属性。 |
属性
CanFreeze |
获取一个值,该值指示是否可将对象变为不可修改。 (继承自 Freezable) |
DependencyObjectType |
获取 DependencyObjectType 包装此实例的 CLR 类型的 。 (继承自 DependencyObject) |
Dispatcher |
获取与此 Dispatcher 关联的 DispatcherObject。 (继承自 DispatcherObject) |
HasAnimatedProperties |
获取一个值,该值指示一个或多个 AnimationClock 对象是否与此对象的任何依赖项属性相关联。 (继承自 Animatable) |
IsFrozen |
获取一个值,该值指示对象当前是否可修改。 (继承自 Freezable) |
IsSealed |
获取一个值,该值指示此实例当前是否为密封的(只读)。 (继承自 DependencyObject) |
IsSmoothJoin |
获取或设置一个值,该值指示在用 PathSegment 为此 PathSegment 和上一个 Pen 描边时是否将它们之间的联接视为角。 (继承自 PathSegment) |
IsStroked |
获取或设置一个值,该值指示是否为该段描边。 (继承自 PathSegment) |
Points |
获取或设置定义此 PointCollection 对象的 PolyQuadraticBezierSegment。 |
方法
事件
Changed |
在修改 Freezable 或其包含的对象时发生。 (继承自 Freezable) |