PolyBezierSegment Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir veya daha fazla kübik Bezier eğrisini temsil eder.
public ref class PolyBezierSegment sealed : System::Windows::Media::PathSegment
public sealed class PolyBezierSegment : System.Windows.Media.PathSegment
type PolyBezierSegment = class
inherit PathSegment
Public NotInheritable Class PolyBezierSegment
Inherits PathSegment
- Devralma
Örnekler
Aşağıdaki örnekte, iki kübik Bezier eğrisi çizmek için a'nın PolyBezierSegment nasıl kullanılacağı gösterilmektedir.
<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 PolyBezierSegment specifies two cubic Bezier curves.
The first curve is from 10,100 (start point specified above)
to 300,100 with a control point of 0,0 and another control
point of 200,0. The second curve is from 300,100
(end of the last curve) to 600,100 with a control point of 300,0
and another control point of 400,0. -->
<PolyBezierSegment Points="0,0 200,0 300,100 300,0 400,0 600,100" />
</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 PolyBezierSegmentExample : Page
{
public PolyBezierSegmentExample()
{
// 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 PolyBezierSegment below.
PointCollection myPointCollection = new PointCollection(6);
myPointCollection.Add(new Point(0, 0));
myPointCollection.Add(new Point(200, 0));
myPointCollection.Add(new Point(300, 100));
myPointCollection.Add(new Point(300, 0));
myPointCollection.Add(new Point(400, 0));
myPointCollection.Add(new Point(600, 100));
// The PolyBezierSegment specifies two cubic Bezier curves.
// The first curve is from 10,100 (start point specified by the PathFigure)
// to 300,100 with a control point of 0,0 and another control point
// of 200,0. The second curve is from 300,100 (end of the last curve) to
// 600,100 with a control point of 300,0 and another control point of 400,0.
PolyBezierSegment myBezierSegment = new PolyBezierSegment();
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 PolyBezierSegmentExample
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 PolyBezierSegment below.
Dim myPointCollection As New PointCollection(6)
myPointCollection.Add(New Point(0, 0))
myPointCollection.Add(New Point(200, 0))
myPointCollection.Add(New Point(300, 100))
myPointCollection.Add(New Point(300, 0))
myPointCollection.Add(New Point(400, 0))
myPointCollection.Add(New Point(600, 100))
' The PolyBezierSegment specifies two cubic Bezier curves.
' The first curve is from 10,100 (start point specified by the PathFigure)
' to 300,100 with a control point of 0,0 and another control point
' of 200,0. The second curve is from 300,100 (end of the last curve) to
' 600,100 with a control point of 300,0 and another control point of 400,0.
Dim myBezierSegment As New PolyBezierSegment()
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
Açıklamalar
Nesneleri ve diğer segmentleri depolamak PolyBezierSegment için bir PathFigure nesne kullanın.
Bezier küp eğrisi dört noktayla tanımlanır: başlangıç noktası, bitiş noktası ve iki kontrol noktası. A PolyBezierSegment , özelliğini bir nokta koleksiyonuna ayarlayarak bir veya daha fazla kübik Bezier eğrisi Points belirtir. Koleksiyondaki her üç nokta için birinci ve ikinci noktalar eğrinin iki denetim noktasını, üçüncü nokta ise bitiş noktasını belirtir. Başlangıç noktası son segmentin bitiş noktasıyla aynı olduğundan eğri için hiçbir başlangıç noktası belirtilmediğinden dikkat edin.
Kübik Bezier eğrisinin iki kontrol noktası mıknatıslar gibi davranır, aksi takdirde düz bir çizginin bir kısmını kendilerine doğru çeker ve bir eğri oluşturur. İlk denetim noktası eğrinin başlangıç bölümünü etkiler; ikinci denetim noktası eğrinin bitiş bölümünü etkiler. Eğrinin her iki denetim noktasından da geçmesi gerekmeyebilir; her denetim noktası, çizginin kendi bölümünü kendisine doğru taşır, ancak kendi içinden taşımaz.
Oluşturucular
| Name | Description |
|---|---|
| PolyBezierSegment() |
PolyBezierSegment sınıfının yeni bir örneğini başlatır. |
| PolyBezierSegment(IEnumerable<Point>, Boolean) |
Belirtilen nesne koleksiyonu Point ve segmentlerin PolyBezierSegment vuruşlu olup olmadığını belirten bir değerle sınıfının yeni bir örneğini başlatır. |
Alanlar
| Name | Description |
|---|---|
| PointsProperty |
Points Bağımlılık özelliğini tanımlar. |
Özellikler
| Name | Description |
|---|---|
| CanFreeze |
Nesnenin değiştirilemez hale getirilip getirilemeyeceğini gösteren bir değer alır. (Devralındığı yer: Freezable) |
| DependencyObjectType |
DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır. (Devralındığı yer: DependencyObject) |
| Dispatcher |
Dispatcher Bunun DispatcherObject ilişkili olduğu öğesini alır. (Devralındığı yer: DispatcherObject) |
| HasAnimatedProperties |
Bir veya daha fazla AnimationClock nesnenin bu nesnenin bağımlılık özelliklerinden herhangi biriyle ilişkili olup olmadığını gösteren bir değer alır. (Devralındığı yer: Animatable) |
| IsFrozen |
Nesnenin şu anda değiştirilebilir olup olmadığını gösteren bir değer alır. (Devralındığı yer: Freezable) |
| IsSealed |
Bu örneğin şu anda korumalı (salt okunur) olup olmadığını gösteren bir değer alır. (Devralındığı yer: DependencyObject) |
| IsSmoothJoin |
Bu PathSegment ve önceki PathSegment arasındaki birleştirmenin bir ile konturlandığında köşe olarak ele alınıp alınmayacağını belirten bir Pendeğer alır veya ayarlar. (Devralındığı yer: PathSegment) |
| IsStroked |
Kesimin vuruşlu olup olmadığını gösteren bir değer alır veya ayarlar. (Devralındığı yer: PathSegment) |
| Points |
Bu PolyBezierSegment nesneyi tanımlayan öğesini PointCollection alır veya ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır. (Devralındığı yer: Animatable) |
| ApplyAnimationClock(DependencyProperty, AnimationClock) |
Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özelliği zaten animasyonlu ise, SnapshotAndReplace iletim davranışı kullanılır. (Devralındığı yer: Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Belirtilen DependencyPropertyöğesine bir animasyon uygular. Animasyon, sonraki çerçeve işlendiğinde başlatılır. Belirtilen özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır. (Devralındığı yer: Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline) |
Belirtilen DependencyPropertyöğesine bir animasyon uygular. Animasyon, sonraki çerçeve işlendiğinde başlatılır. Belirtilen özellik zaten animasyonluysa, SnapshotAndReplace iletim davranışı kullanılır. (Devralındığı yer: Animatable) |
| CheckAccess() |
Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler. (Devralındığı yer: DispatcherObject) |
| ClearValue(DependencyProperty) |
Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir. (Devralındığı yer: DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir. (Devralındığı yer: DependencyObject) |
| Clone() |
Bu PolyBezierSegmentnesnenin değerlerinin derin kopyalarını oluşturarak bu öğesinin değiştirilebilir bir kopyasını oluşturur. Bağımlılık özelliklerini kopyalarken, bu yöntem kaynak başvurularını ve veri bağlamalarını kopyalar (ancak bunlar artık çözümlenmeyebilir) ancak animasyonları veya geçerli değerlerini kopyalar. |
| CloneCore(Freezable) |
Temel (animasyonsuz) özellik değerlerini kullanarak örneği belirtilenlerin Freezable bir kopyası (derin kopya) yapar. (Devralındığı yer: Freezable) |
| CloneCurrentValue() |
Bu nesnenin değiştirilebilir bir kopyasını oluşturarak bu PolyBezierSegment nesnenin geçerli değerlerinin derin kopyalarını oluşturur. Kaynak başvuruları, veri bağlamaları ve animasyonlar kopyalanmaz, ancak geçerli değerleri kopyalanır. |
| CloneCurrentValueCore(Freezable) |
Geçerli özellik değerlerini kullanarak örneği belirtilenlerin Freezable değiştirilebilir bir kopyası (derin kopya) yapar. (Devralındığı yer: Freezable) |
| CoerceValue(DependencyProperty) |
Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında CoerceValueCallbackvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir DependencyObject işlevi çağırarak gerçekleştirilir. (Devralındığı yer: DependencyObject) |
| CreateInstance() |
Freezable sınıfının yeni bir örneğini başlatır. (Devralındığı yer: Freezable) |
| CreateInstanceCore() |
Türetilmiş bir sınıfta uygulandığında, türetilmiş sınıfın Freezable yeni bir örneğini oluşturur. (Devralındığı yer: Freezable) |
| Equals(Object) |
Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler. (Devralındığı yer: DependencyObject) |
| Freeze() |
Geçerli nesneyi değiştirilemez hale getirir ve özelliğini olarak |
| FreezeCore(Boolean) |
Bu Animatable nesneyi değiştirilemez hale getirir veya değiştirilemez hale getirilip getirilemeyeceğini belirler. (Devralındığı yer: Animatable) |
| GetAnimationBaseValue(DependencyProperty) |
Belirtilen DependencyPropertyöğesinin animasyonsuz değerini döndürür. (Devralındığı yer: Animatable) |
| GetAsFrozen() |
temel (animasyonsuz) özellik değerlerini kullanarak donmuş bir kopyasını Freezableoluşturur. Kopya dondurulacağından, dondurulan alt nesneler başvuruyla kopyalanır. (Devralındığı yer: Freezable) |
| GetAsFrozenCore(Freezable) |
Temel (animasyonsuz) özellik değerlerini kullanarak örneği belirtilenlerin Freezable donmuş bir kopyası yapar. (Devralındığı yer: Freezable) |
| GetCurrentValueAsFrozen() |
Geçerli özellik değerlerini kullanarak donmuş Freezable bir kopyasını oluşturur. Kopya dondurulacağından, dondurulan alt nesneler başvuruyla kopyalanır. (Devralındığı yer: Freezable) |
| GetCurrentValueAsFrozenCore(Freezable) |
Geçerli örneği, belirtilen Freezableöğesinin donmuş bir kopyası yapar. Nesne animasyonlu bağımlılık özelliklerine sahipse, geçerli animasyonlu değerleri kopyalanır. (Devralındığı yer: Freezable) |
| GetHashCode() |
Bu DependencyObjectiçin bir karma kodu alır. (Devralındığı yer: DependencyObject) |
| GetLocalValueEnumerator() |
Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özel bir numaralandırıcı oluşturur. (Devralındığı yer: DependencyObject) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| GetValue(DependencyProperty) |
Bir öğesinin bu örneğindeki bir bağımlılık özelliğinin DependencyObjectgeçerli etkin değerini döndürür. (Devralındığı yer: DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir. (Devralındığı yer: DependencyObject) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| OnChanged() |
Geçerli Freezable nesne değiştirildiğinde çağrılır. (Devralındığı yer: Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Bu üye Windows Presentation Foundation (WPF) altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır. (Devralındığı yer: Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Yeni ayarlanmış bir DependencyObjectType veri üyesi için uygun bağlam işaretçilerinin oluşturulmasını sağlar. (Devralındığı yer: Freezable) |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
türündeki DependencyObjectFreezabledeğişen bağımlılık özelliğine yanıt olarak herhangi Changed bir işleyici çağırmak için uygulamasını OnPropertyChanged(DependencyPropertyChangedEventArgs) geçersiz kılar. (Devralındığı yer: Freezable) |
| ReadLocalValue(DependencyProperty) |
Varsa, bağımlılık özelliğinin yerel değerini döndürür. (Devralındığı yer: DependencyObject) |
| ReadPreamble() |
Freezable geçerli bir iş parçacığından erişildiğinden emin olur. öğesinin Freezable devralanları, bağımlılık özellikleri olmayan veri üyelerini okuyan herhangi bir API'nin başında bu yöntemi çağırmalıdır. (Devralındığı yer: Freezable) |
| SetCurrentValue(DependencyProperty, Object) |
Bir bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar. (Devralındığı yer: DependencyObject) |
| SetValue(DependencyProperty, Object) |
Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bir bağımlılık özelliğinin yerel değerini ayarlar. (Devralındığı yer: DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Bağımlılık özelliğinin tanımlayıcısı tarafından belirtilen salt okunur bağımlılık özelliğinin DependencyPropertyKey yerel değerini ayarlar. (Devralındığı yer: DependencyObject) |
| ShouldSerializeProperty(DependencyProperty) |
Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini gösteren bir değer döndürür. (Devralındığı yer: DependencyObject) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |
| VerifyAccess() |
Çağıran iş parçacığının bu DispatcherObjectöğesine erişmesini zorlar. (Devralındığı yer: DispatcherObject) |
| WritePostscript() |
Changed için Freezable olayını oluşturur ve yöntemini çağırırOnChanged(). öğesinden Freezable türetilen sınıflar, bağımlılık özellikleri olarak depolanmayan sınıf üyelerini değiştiren herhangi bir API'nin sonunda bu yöntemi çağırmalıdır. (Devralındığı yer: Freezable) |
| WritePreamble() |
öğesinin Freezable dondurulmadığını ve geçerli bir iş parçacığı bağlamından erişildiğini doğrular. Freezable devralanların, bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırması gerekir. (Devralındığı yer: Freezable) |
Ekinlikler
| Name | Description |
|---|---|
| Changed |
veya içerdiği bir nesne değiştirildiğinde Freezable gerçekleşir. (Devralındığı yer: Freezable) |