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 개체가 됩니다. 원래 Stroke가 Strokes 컬렉션(Ink.Strokes가 아닌)에 있던 경우 시작 부분은 해당 컬렉션에 유지됩니다.
예제
이 예제에서는 InkOverlay의 선택된 각 Stroke 개체를 조사합니다. Stroke가 Ink 개체의 나머지 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에서 지원