Stroke.FindIntersections 메서드
업데이트: 2007년 11월
지정된 Strokes 컬렉션 내에서 이 Stroke 개체가 다른 Stroke 개체와 교차하는 지점을 찾습니다.
네임스페이스: Microsoft.Ink
어셈블리: Microsoft.Ink(Microsoft.Ink.dll)
구문
‘선언
Public Function FindIntersections ( _
strokes As Strokes _
) As Single()
‘사용 방법
Dim instance As Stroke
Dim strokes As Strokes
Dim returnValue As Single()
returnValue = instance.FindIntersections(strokes)
public float[] FindIntersections(
Strokes strokes
)
public:
array<float>^ FindIntersections(
Strokes^ strokes
)
public float[] FindIntersections(
Strokes strokes
)
public function FindIntersections(
strokes : Strokes
) : float[]
매개 변수
- strokes
형식: Microsoft.Ink.Strokes
이 Stroke 개체와의 교차를 테스트하는 데 사용되는 Strokes 컬렉션입니다. nullNull 참조(Visual Basic의 경우 Nothing)(Microsoft Visual Basic .NET의 경우 Nothing)인 경우 Ink 개체의 모든 Strokes 컬렉션을 사용합니다.
반환 값
형식: array<System.Single[]
이 메서드는 교차가 발생하는 위치를 나타내는 부동 소수점 인덱스 값 배열을 반환합니다.
부동 소수점 인덱스는 Stroke 개체의 두 점 사이에 있는 위치를 나타내는 부동 소수점 값입니다. 예를 들어 스트로크에서 첫 번째 점이 0.0이고 두 번째 점이 1.0인 경우 0.5는 첫 번째 점과 두 번째 점 사이의 중간 지점입니다. 마찬가지로 부동 소수점 인덱스 값 37.25는 스트로크의 37번과 38번 점 사이의 선에서 25% 위치를 나타냅니다.
설명
이 메서드는 교차점만 확인할 수 있습니다.
예제
이 예제에서는 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에서 지원