다음을 통해 공유


Stroke.Split 메서드

업데이트: 2007년 11월

Stroke 개체의 지정된 위치에 있는 Stroke 개체를 분할하고 새 Stroke 개체를 반환합니다.

네임스페이스:  Microsoft.Ink
어셈블리:  Microsoft.Ink(Microsoft.Ink.dll)

구문

‘선언
Public Function Split ( _
    findex As Single _
) As Stroke
‘사용 방법
Dim instance As Stroke
Dim findex As Single
Dim returnValue As Stroke

returnValue = instance.Split(findex)
public Stroke Split(
    float findex
)
public:
Stroke^ Split(
    float findex
)
public Stroke Split(
    float findex
)
public function Split(
    findex : float
) : Stroke

매개 변수

  • findex
    형식: System.Single
    Stroke 개체를 분할할 위치를 나타내는 부동 소수점 인덱스 값입니다.

반환 값

형식: Microsoft.Ink.Stroke
이 메서드를 호출하여 만들어지는 새 Stroke 개체입니다.

설명

부동 소수점 인덱스는 스트로크의 두 점 사이에 있는 위치를 나타내는 부동 소수점 값입니다. 예를 들어 스트로크에서 첫 번째 점이 0.0이고 두 번째 점이 1.0인 경우 0.5는 첫 번째 점과 두 번째 점 사이의 중간 지점입니다. 마찬가지로 부동 소수점 인덱스 값 37.25는 스트로크의 37번과 38번 점 사이의 선에서 25% 위치를 나타냅니다.

Stroke가 분할되는 경우 스트로크의 한 부분은 원래 Stroke 개체의 Id 속성이 그대로 유지되지만, Stroke의 다른 부분은 가장 높은 기존 Id 속성보다 하나 더 높은 Id 속성이 지정된 새 Stroke 개체가 됩니다. 원래 StrokeStrokes 컬렉션(Ink.Strokes가 아닌)에 있던 경우 시작 부분은 해당 컬렉션에 유지됩니다.

예제

이 예제에서는 InkOverlay의 선택된 각 Stroke 개체를 조사합니다. StrokeInk 개체의 나머지 Strokes 컬렉션과 하나 이상의 지점에서 교차하는 경우 Stroke는 첫 번째 교차점에서 분할됩니다.

' Access to the Strokes property returns a copy of the Strokes object.
' This copy must be implicitly (via using statement) or explicitly
' disposed of in order to avoid a memory leak.
Using allStrokes As Strokes = mInkOverlay.Ink.Strokes
    For Each S As Stroke In mInkOverlay.Selection
        ' find the intersections
        Dim intersections() As Single = S.FindIntersections(allStrokes)
        ' if we have at least 1 intersection, split the stroke
        If intersections.Length > 0 Then
            S.Split(intersections(0))
        End If
    Next
End Using
// Access to the Strokes property returns a copy of the Strokes object.
// This copy must be implicitly (via using statement) or explicitly
// disposed of in order to avoid a memory leak.
using (Strokes allStrokes = mInkOverlay.Ink.Strokes)
{
    foreach (Stroke S in mInkOverlay.Selection)
    {
        // find the intersections
        float[] intersections = S.FindIntersections(allStrokes);
        // if we have at least 1 intersection, split the stroke
        if (intersections.Length > 0)
        {
            S.Split(intersections[0]);
        }
    }
}

플랫폼

Windows Vista

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

Stroke 클래스

Stroke 멤버

Microsoft.Ink 네임스페이스