# PolyBezierSegment 클래스

## 정의

하나 이상의 입방형 3차원 곡선을 나타냅니다.Represents one or more cubic Bezier curves.

``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``````
상속

## 예제

다음 예제에서는 사용 하는 방법을 보여 줍니다는 PolyBezierSegment 두 입방 형 3 차원 곡선을 그릴 합니다.The following example shows how to use a PolyBezierSegment to draw two cubic Bezier curves.

``````<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);

// 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();

myPathFigure.Segments = myPathSegmentCollection;

PathFigureCollection myPathFigureCollection = new PathFigureCollection();

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();
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)

' 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()

myPathFigure.Segments = myPathSegmentCollection

Dim myPathFigureCollection As New PathFigureCollection()

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()
Me.Content = mainPanel
End Sub
End Class
End Namespace
``````

## 설명

사용 된 PathFigure 저장할 개체입니다 PolyBezierSegment 개체 및 다른 세그먼트입니다.Use a PathFigure object to store PolyBezierSegment objects and other segments.

입방 형 3 차원 곡선을 4 개의 점이 정의한: 시작점, 끝점 및 두 개의 제어점입니다.A cubic Bezier curve is defined by four points: a start point, an end point and two control points. A PolyBezierSegment 설정 하 여 하나 이상의 입방 형 3 차원 곡선을 지정 합니다 Points 속성 요소의 컬렉션을 합니다.A PolyBezierSegment specifies one or more cubic Bezier curves by setting the Points property to a collection of points. 컬렉션의 모든 세 지점에 대 한 첫 번째와 두 번째 지점 곡선의 두 개의 제어점을 지정 하 고 세 번째 점과 끝점을 지정 합니다.For every three points in the collection, the first and second points specify the two control points of the curve and the third point specifies the end point. 곡선에 대 한 시작점 이상는 시작점 마지막 세그먼트의 끝점으로 동일 하기 때문에 지정 됩니다.Note that no start point for the curve is specified because start point is the same as the end point of the last segment.

입방 형 3 차원 곡선의 두 개의 제어점 자석, 자체적으로 직선 수의 일부를 끌어들이고 곡선을 만듭니다 처럼 동작 합니다.The two control points of a cubic Bezier curve behave like magnets, attracting portions of what would otherwise be a straight line toward themselves and producing a curve. 첫 번째 제어점; 곡선의 시작 부분을 영향을 줍니다. 두 번째 제어점 곡선의 끝 부분을 영향을 줍니다.The first control point affects the beginning portion of the curve; the second control point affects the ending portion of the curve. 곡선의 제어점; 중 하나를 통해 반드시 통과 하지는 각 제어점 자체 통해서가 아니라 쪽으로 줄의 해당 부분을 이동합니다.Note that the curve doesn't necessarily pass through either of the control points; each control point moves its portion of the line toward itself, but not through itself.

## 생성자

 PolyBezierSegment 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the PolyBezierSegment class. 지정한 PolyBezierSegment 개체 컬렉션과 세그먼트가 스트로크되는지 여부를 지정하는 값을 사용하여 Point 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the PolyBezierSegment class with the specified collection of Point objects and a value specifying whether the segments are stroked.

## 필드

 Points 종속성 속성을 나타냅니다.Identifies the Points dependency property.

## 속성

 개체를 수정 불가능으로 설정할 수 있는지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the object can be made unmodifiable. (다음에서 상속됨 Freezable) 이 인스턴스의 CLRCLR 형식을 래핑하는 DependencyObjectType을 가져옵니다.Gets the DependencyObjectType that wraps the CLRCLR type of this instance. (다음에서 상속됨 DependencyObject) 이 Dispatcher와 연결된 DispatcherObject를 가져옵니다.Gets the Dispatcher this DispatcherObject is associated with. (다음에서 상속됨 DispatcherObject) 하나 이상의 AnimationClock 개체가 이 개체의 종속성 속성과 연결되어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether one or more AnimationClock objects is associated with any of this object's dependency properties. (다음에서 상속됨 Animatable) 개체가 현재 수정 가능한지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the object is currently modifiable. (다음에서 상속됨 Freezable) 이 인스턴스가 현재 봉인되어 있는지(읽기 전용인지) 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether this instance is currently sealed (read-only). (다음에서 상속됨 DependencyObject) PathSegment을 사용하여 스트로크할 때 이 PathSegment와 이전 Pen 사이의 연결이 모퉁이로 처리되는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether the join between this PathSegment and the previous PathSegment is treated as a corner when it is stroked with a Pen. (다음에서 상속됨 PathSegment) 세그먼트가 스트로크되는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether the segment is stroked. (다음에서 상속됨 PathSegment) 이 PointCollection 개체를 정의하는 PolyBezierSegment을 가져오거나 설정합니다.Gets or sets the PointCollection that define this PolyBezierSegment object.

## 메서드

 지정된 DependencyProperty에 AnimationClock을 적용합니다.Applies an AnimationClock to the specified DependencyProperty. 속성에 이미 애니메이션 효과가 적용되어 있으면 SnapshotAndReplace 전달 동작이 사용됩니다.If the property is already animated, the SnapshotAndReplace handoff behavior is used. (다음에서 상속됨 Animatable) 지정된 DependencyProperty에 AnimationClock을 적용합니다.Applies an AnimationClock to the specified DependencyProperty. 속성에 이미 애니메이션이 적용되어 있으면 지정된 HandoffBehavior가 사용됩니다.If the property is already animated, the specified HandoffBehavior is used. (다음에서 상속됨 Animatable) 지정된 DependencyProperty에 애니메이션을 적용합니다.Applies an animation to the specified DependencyProperty. 애니메이션은 다음 프레임을 렌더링할 때 시작됩니다.The animation is started when the next frame is rendered. 지정된 속성에 이미 애니메이션 효과가 적용되어 있으면 SnapshotAndReplace 전달 동작이 사용됩니다.If the specified property is already animated, the SnapshotAndReplace handoff behavior is used. (다음에서 상속됨 Animatable) 지정된 DependencyProperty에 애니메이션을 적용합니다.Applies an animation to the specified DependencyProperty. 애니메이션은 다음 프레임을 렌더링할 때 시작됩니다.The animation is started when the next frame is rendered. 지정된 속성에 이미 애니메이션이 적용되어 있으면 지정된 HandoffBehavior가 사용됩니다.If the specified property is already animated, the specified HandoffBehavior is used. (다음에서 상속됨 Animatable) 호출 스레드가 이 DispatcherObject에 액세스할 수 있는지 여부를 확인합니다.Determines whether the calling thread has access to this DispatcherObject. (다음에서 상속됨 DispatcherObject) 속성의 로컬 값을 지웁니다.Clears the local value of a property. 지울 속성이 DependencyProperty 식별자에서 지정됩니다.The property to be cleared is specified by a DependencyProperty identifier. (다음에서 상속됨 DependencyObject) 읽기 전용 속성의 로컬 값을 지웁니다.Clears the local value of a read-only property. 선언할 속성이 DependencyPropertyKey에서 지정됩니다.The property to be cleared is specified by a DependencyPropertyKey. (다음에서 상속됨 DependencyObject) 이 개체 값의 전체 복사본을 만들어 이 PolyBezierSegment의 수정 가능한 복제본을 만듭니다.Creates a modifiable clone of this PolyBezierSegment, making deep copies of this object's values. 종속성 속성을 복사하는 경우 이 메서드는 더 이상 확인되지 않을 수도 있는 리소스 참조와 데이터 바인딩을 복사하지만 애니메이션이나 애니메이션의 현재 값은 복사하지 않습니다.When copying dependency properties, this method copies resource references and data bindings (but they might no longer resolve) but not animations or their current values. 기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 복제본(전체 복사본)으로 만듭니다.Makes the instance a clone (deep copy) of the specified Freezable using base (non-animated) property values. (다음에서 상속됨 Freezable) PolyBezierSegment 개체의 현재 값에 대한 전체 복사본을 만들어 이 개체의 수정 가능한 복제본을 만듭니다.Creates a modifiable clone of this PolyBezierSegment object, making deep copies of this object's current values. 리소스 참조, 데이터 바인딩 및 애니메이션은 복사되지 않지만 이러한 요소의 현재 값은 복사됩니다.Resource references, data bindings, and animations are not copied, but their current values are. 현재 속성 값을 사용하여 이 인스턴스를 지정된 Freezable의 수정 가능한 클론(전체 복사본)으로 만듭니다.Makes the instance a modifiable clone (deep copy) of the specified Freezable using current property values. (다음에서 상속됨 Freezable) 지정된 종속성 속성의 값을 강제 변환합니다.Coerces the value of the specified dependency property. 호출하는 DependencyObject에 있으므로 이 작업은 종속성 속성의 속성 메타데이터에 지정된 CoerceValueCallback 함수를 호출하여 수행합니다.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject. (다음에서 상속됨 DependencyObject) Freezable 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Freezable class. (다음에서 상속됨 Freezable) 파생 클래스에서 구현되는 경우 Freezable 파생 클래스의 새 인스턴스를 만듭니다.When implemented in a derived class, creates a new instance of the Freezable derived class. (다음에서 상속됨 Freezable) 제공된 DependencyObject가 현재 DependencyObject에 해당하는지 여부를 확인합니다.Determines whether a provided DependencyObject is equivalent to the current DependencyObject. (다음에서 상속됨 DependencyObject) 현재 개체를 수정할 수 없게 설정하고 해당 IsFrozen 속성을 `true`로 설정합니다.Makes the current object unmodifiable and sets its IsFrozen property to `true`. (다음에서 상속됨 Freezable) 이 Animatable 개체를 수정할 수 없게 만들거나, 수정할 수 없게 만들 수 있는지 확인합니다.Makes this Animatable object unmodifiable or determines whether it can be made unmodifiable. (다음에서 상속됨 Animatable) 지정된 DependencyProperty의 애니메이션이 적용되지 않은 값을 반환합니다.Returns the non-animated value of the specified DependencyProperty. (다음에서 상속됨 Animatable) 애니메이션이 적용되지 않은 기준 속성 값을 사용하여 Freezable의 고정된 복사본을 만듭니다.Creates a frozen copy of the Freezable, using base (non-animated) property values. 복사본이 고정되므로 고정된 하위 개체는 모두 참조를 통해 복사됩니다.Because the copy is frozen, any frozen sub-objects are copied by reference. (다음에서 상속됨 Freezable) 기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 고정된 복제본으로 만듭니다.Makes the instance a frozen clone of the specified Freezable using base (non-animated) property values. (다음에서 상속됨 Freezable) 현재 속성 값을 사용하여 Freezable의 고정된 복사본을 만듭니다.Creates a frozen copy of the Freezable using current property values. 복사본이 고정되므로 고정된 하위 개체는 모두 참조를 통해 복사됩니다.Because the copy is frozen, any frozen sub-objects are copied by reference. (다음에서 상속됨 Freezable) 현재 인스턴스를 지정된 Freezable의 고정 클론으로 만듭니다.Makes the current instance a frozen clone of the specified Freezable. 개체에 애니메이션 효과를 준 종속성 속성이 있는 경우 애니메이션 효과를 준 현재 값이 복사됩니다.If the object has animated dependency properties, their current animated values are copied. (다음에서 상속됨 Freezable) 이 DependencyObject의 해시 코드를 가져옵니다.Gets a hash code for this DependencyObject. (다음에서 상속됨 DependencyObject) 이 DependencyObject에 대해 로컬로 값을 설정한 종속성 속성을 확인하기 위한 특수 열거자를 만듭니다.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject. (다음에서 상속됨 DependencyObject) 현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance. (다음에서 상속됨 Object) 이 DependencyObject의 인스턴스에서 종속성 속성의 현재 유효 값을 반환합니다.Returns the current effective value of a dependency property on this instance of a DependencyObject. (다음에서 상속됨 DependencyObject) 지정된 종속성 속성의 유효 값을 다시 계산합니다.Re-evaluates the effective value for the specified dependency property. (다음에서 상속됨 DependencyObject) 현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object. (다음에서 상속됨 Object) 현재 Freezable 개체가 수정될 때 호출됩니다.Called when the current Freezable object is modified. (다음에서 상속됨 Freezable) 방금 설정된 DependencyObjectType 데이터 멤버에 대한 적절한 컨텍스트 포인터를 설정합니다.Ensures that appropriate context pointers are established for a DependencyObjectType data member that has just been set. (다음에서 상속됨 Freezable) 이 멤버는 WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.This member supports the WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code. (다음에서 상속됨 Freezable) OnPropertyChanged(DependencyPropertyChangedEventArgs)의 DependencyObject 구현을 재정의하여 Freezable 형식의 변화하는 종속성 속성에 대한 응답으로 Changed 처리기도 호출합니다.Overrides the DependencyObject implementation of OnPropertyChanged(DependencyPropertyChangedEventArgs) to also invoke any Changed handlers in response to a changing dependency property of type Freezable. (다음에서 상속됨 Freezable) 종속성 속성의 로컬 값을 반환합니다(있는 경우).Returns the local value of a dependency property, if it exists. (다음에서 상속됨 DependencyObject) 유효한 스레드에서 Freezable에 액세스하고 있는지 확인합니다.Ensures that the Freezable is being accessed from a valid thread. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버를 읽는 API의 시작 부분에서 이 메서드를 호출해야 합니다.Inheritors of Freezable must call this method at the beginning of any API that reads data members that are not dependency properties. (다음에서 상속됨 Freezable) 해당 값 소스를 변경하지 않고 종속성 속성의 값을 설정합니다.Sets the value of a dependency property without changing its value source. (다음에서 상속됨 DependencyObject) 지정된 종속성 속성 식별자를 가진 종속성 속성의 로컬 값을 설정합니다.Sets the local value of a dependency property, specified by its dependency property identifier. (다음에서 상속됨 DependencyObject) 종속성 속성의 DependencyPropertyKey 식별자에 의해 지정된 읽기 전용 종속성 속성의 로컬 값을 설정합니다.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property. (다음에서 상속됨 DependencyObject) serialization 프로세스에서 지정된 종속성 속성의 값을 직렬화해야 하는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property. (다음에서 상속됨 DependencyObject) 현재 개체를 나타내는 string을 반환합니다.Returns a string that represents the current object. (다음에서 상속됨 Object) 호출 스레드에서 이 DispatcherObject에 액세스할 수 있는지 확인합니다.Enforces that the calling thread has access to this DispatcherObject. (다음에서 상속됨 DispatcherObject) Freezable에 대한 Changed 이벤트를 발생시키고 해당 OnChanged() 메서드를 호출합니다.Raises the Changed event for the Freezable and invokes its OnChanged() method. Freezable에서 파생된 클래스는 종속성 속성으로 저장되지 않은 클래스 멤버를 수정하는 모든 API의 끝에서 이 메서드를 호출해야 합니다.Classes that derive from Freezable should call this method at the end of any API that modifies class members that are not stored as dependency properties. (다음에서 상속됨 Freezable) Freezable이 고정되어 있지 않고 유효한 스레드 컨텍스트에서 액세스되고 있는지 확인합니다.Verifies that the Freezable is not frozen and that it is being accessed from a valid threading context. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버에 쓰는 API의 시작 부분에서 이 메서드를 호출해야 합니다.Freezable inheritors should call this method at the beginning of any API that writes to data members that are not dependency properties. (다음에서 상속됨 Freezable)

## 이벤트

 Freezable 또는 여기에 들어 있는 개체가 수정될 때 발생합니다.Occurs when the Freezable or an object it contains is modified. (다음에서 상속됨 Freezable)