HitTestResult クラス
ポインター位置でヒットした対象の経路と、走査中の座標変換を保持します。
名前空間: FloatSoda.Gesture
アセンブリ: FloatSoda.dll
public class HitTestResult継承したメンバー
Section titled “継承したメンバー”object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()
座標変換はPushOffsetまたはPushTransformとPopTransformを対にして管理し、Add時点の累積値を各エントリへ保存します。
LastTransform
Section titled “LastTransform”現在のグローバル座標からローカル座標への累積変換を取得します。
public Matrix3x2 LastTransform { get; }プロパティの値
Section titled “プロパティの値”まだ確定していない変換がある場合は、取得時に累積変換へ反映します。
ヒットした対象を配送順に保持する読み取り専用の経路を取得します。
public IReadOnlyList<HitTestEntry> Path { get; }プロパティの値
Section titled “プロパティの値”Add(HitTestEntry)
Section titled “Add(HitTestEntry)”現在の累積座標変換を設定してヒットテスト経路へエントリを追加します。
public void Add(HitTestEntry entry)パラメーター
Section titled “パラメーター”entry HitTestEntry
追加する対象。指定されている座標変換は現在の累積値で置き換えられます。
AddWidthPaintOffset(Offset?, Offset, Func<HitTestResult, Offset, bool>)
Section titled “AddWidthPaintOffset(Offset?, Offset, Func<HitTestResult, Offset, bool>)”描画時の子要素オフセットを座標へ反映し、子要素のヒットテストを実行します。
public bool AddWidthPaintOffset(Offset? offset, Offset position, Func<HitTestResult, Offset, bool> hitTest)パラメーター
Section titled “パラメーター”offset Offset?
親座標系における子要素の論理ピクセル単位の位置。位置がない場合はnullです。
position Offset
親座標系におけるポインター位置。
hitTest Func<HitTestResult, Offset, bool>
この結果と子要素のローカル座標を受け取り、ヒット判定を行う処理。
子要素がヒットした場合はtrue、ヒットしなかった場合はfalse。
指定したオフセットは処理の呼び出し中だけ積まれ、処理が戻ると元の変換状態へ戻されます。
AddWithPaintTransform(Matrix3x2, Offset, Func<HitTestResult, Offset, bool>)
Section titled “AddWithPaintTransform(Matrix3x2, Offset, Func<HitTestResult, Offset, bool>)”描画時のアフィン変換を座標へ反映し、子要素のヒットテストを実行します。
public bool AddWithPaintTransform(Matrix3x2 transform, Offset position, Func<HitTestResult, Offset, bool> hitTest)パラメーター
Section titled “パラメーター”transform Matrix3x2
子要素のローカル座標から親座標へ変換する描画行列。
position Offset
親座標系におけるポインター位置。
hitTest Func<HitTestResult, Offset, bool>
この結果と子要素のローカル座標を受け取り、ヒット判定を行う処理。
子要素がヒットした場合はtrue、ヒットしなかった場合はfalse。
逆行列を計算できない場合はヒットしません。逆変換は処理の呼び出し中だけ積まれ、処理が戻ると元の変換状態へ戻されます。
PopTransform()
Section titled “PopTransform()”直前に積まれた座標変換を取り除きます。
public void PopTransform()PushOffsetまたはPushTransformと対にして呼び出す必要があります。未確定の変換があればそれを、なければ確定済みの累積変換を1段戻します。
PushOffset(Offset)
Section titled “PushOffset(Offset)”子要素のヒットテスト中に適用する座標オフセットを積みます。
public void PushOffset(Offset offset)パラメーター
Section titled “パラメーター”offset Offset
現在の座標へ加算する論理ピクセル単位のオフセット。
走査を戻る際はPopTransformを同じ回数だけ呼び出します。
PushTransform(Matrix3x2)
Section titled “PushTransform(Matrix3x2)”子要素のヒットテスト中に適用するアフィン座標変換を積みます。
public void PushTransform(Matrix3x2 transform)パラメーター
Section titled “パラメーター”transform Matrix3x2
現在の座標から子要素のローカル座標へ変換する行列。
走査を戻る際はPopTransformを同じ回数だけ呼び出します。