コンテンツにスキップ

TransformLayer クラス

すべての子レイヤーへ同じ座標変換を適用して合成するレイヤーです。

名前空間: FloatSoda.Rendering.Layers
アセンブリ: FloatSoda.Rendering.dll

public class TransformLayer : ContainerLayer, ILayer

object ← ContainerLayer ← TransformLayer

ILayer

ContainerLayer.Children, ContainerLayer.HasChildren, ContainerLayer.PaintBounds, ContainerLayer.Layout(LayerContext), ContainerLayer.LayoutChildren(LayerContext), ContainerLayer.Paint(LayerContext), ContainerLayer.Clone(), object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()

子レイヤーの座標系へ適用する変換行列を取得または設定します。

public SKMatrix Transform { get; set; }

SKMatrix

変換行列と子レイヤーを保持する新しい変換レイヤーを作成します。

public override ILayer Clone()

ILayer

子レイヤーを再帰的に複製した新しい変換レイヤー。

子レイヤーをレイアウトし、変換後の領域をこのレイヤーの描画境界として設定します。

public override void Layout(LayerContext context)

context LayerContext

子レイヤーのレイアウトに使用するコンテキスト。

変換行列を子レイヤーの座標系へ適用して描画します。

public override void Paint(LayerContext context)

context LayerContext

変換後の子レイヤーを合成するキャンバスを保持するコンテキスト。

描画後にキャンバスの状態を復元するため、後続のレイヤーへ変換は引き継がれません。