コンテンツにスキップ

RenderClipPath クラス

子の描画をパス領域で切り抜くRenderObjectです。

名前空間: FloatSoda.RenderObjects.Painting
アセンブリ: FloatSoda.dll

public class RenderClipPath : RenderCustomClip<SKPath>, IHitTestTarget, IHasSingleChildRenderObject

object ← RenderObject ← RenderBox ← RenderProxyBox ← RenderCustomClip<SKPath> ← RenderClipPath

IHitTestTarget, IHasSingleChildRenderObject

RenderCustomClip<SKPath>.Clipper, RenderCustomClip<SKPath>.ClipBehavior, RenderCustomClip<SKPath>.Clip, RenderCustomClip<SKPath>.DefaultClip, RenderCustomClip<SKPath>.MarkNeedsClip(), RenderCustomClip<SKPath>.PerformLayout(), RenderProxyBox.Child, RenderProxyBox.SetupParentData(RenderObject), RenderProxyBox.PerformLayout(), RenderProxyBox.ComputeMinIntrinsicWidth(double), RenderProxyBox.ComputeMaxIntrinsicWidth(double), RenderProxyBox.ComputeMinIntrinsicHeight(double), RenderProxyBox.ComputeMaxIntrinsicHeight(double), RenderProxyBox.Paint(PaintingContext, Offset), RenderProxyBox.Attach(RenderPipeline?), RenderProxyBox.Detach(), RenderProxyBox.VisitChildren(Action<RenderObject>), RenderProxyBox.RedepthChildren(), RenderProxyBox.HitTestChildren(HitTestResult, Offset), RenderBox.Size, RenderBox.GetMinIntrinsicWidth(double), RenderBox.GetMaxIntrinsicWidth(double), RenderBox.GetMinIntrinsicHeight(double), RenderBox.GetMaxIntrinsicHeight(double), RenderBox.ComputeMinIntrinsicWidth(double), RenderBox.ComputeMaxIntrinsicWidth(double), RenderBox.ComputeMinIntrinsicHeight(double), RenderBox.ComputeMaxIntrinsicHeight(double), RenderBox.HitTest(HitTestResult, Offset), RenderBox.HitTestChildren(HitTestResult, Offset), RenderBox.HitTestSelf(Offset), RenderBox.HandleEvent(PointerEvent, HitTestEntry), RenderObject.Constraints, RenderObject.ParentData, RenderObject.Parent, RenderObject.Owner, RenderObject.Layer, RenderObject.Size, RenderObject.NeedsPaint, RenderObject.NeedsLayout, RenderObject.Depth, RenderObject.IsRepaintBoundary, RenderObject.Attached, RenderObject.RelayoutBoundary, RenderObject.SizedByParent, RenderObject.PerformLayout(), RenderObject.Layout(BoxConstraints, bool), RenderObject.LayoutWithoutResize(), RenderObject.CleanChildRelayoutBoundary(), RenderObject.MarkNeedsLayout(), RenderObject.MarkParentNeedsLayout(), RenderObject.Attach(RenderPipeline?), RenderObject.AdoptChild(RenderObject), RenderObject.RedepthChild(RenderObject), RenderObject.RedepthChildren(), RenderObject.VisitChildren(Action<RenderObject>), RenderObject.SetupParentData(RenderObject), RenderObject.Paint(PaintingContext, Offset), RenderObject.MarkNeedsPaint(), RenderObject.Detach(), RenderObject.DropChild(RenderObject), RenderObject.HandleEvent(PointerEvent, HitTestEntry), object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()

Clipperが未設定のときに使用する既定のクリップ領域を取得します。

protected override SKPath DefaultClip { get; }

SKPath

指定したローカル座標がこのRenderBoxまたはその子にヒットするかを判定します。

public override bool HitTest(HitTestResult result, Offset position)

result HitTestResult

ヒットした対象を奥から手前の順に追加する結果。

position Offset

このRenderBoxのローカル座標系における判定位置。

bool

自身または子がヒットした場合はtrue、それ以外の場合はfalseです。

位置がSizeの範囲外の場合は子と自身を判定しません。 ヒットした場合は子の結果に続けて自身のエントリを追加します。

子を指定した位置へ描画します。

public override void Paint(PaintingContext context, Offset offset)

context PaintingContext

描画命令と合成レイヤーを記録するコンテキスト。

offset Offset

親の座標系における描画原点。

子が存在しない場合は何も記録しません。