LayoutTransformer
レイアウト変換をコンテンツに適用するコントロールを表します。
継承元: ContentControl
コンストラクター
public LayoutTransformer()
layoutTransformer = LayoutTransformer()
LayoutTransformerクラスの新しいインスタンスを初期化します。
プロパティ
public Transform LayoutTransform { get; set; }
value = layoutTransformer.LayoutTransform
layoutTransformer.LayoutTransform = value
レイアウト変換をLayoutTransformer制御コンテンツに適用するか設定します。
メソッド
public void ApplyLayoutTransform()
layoutTransformer.ApplyLayoutTransform()
レイアウトはLayoutTransformer@制御内容に変わります。
protected override Size ArrangeOverride(Size finalSize)
result = layoutTransformer.ArrangeOverride(finalSize)
レイアウトの「配列」パスの動作を提供します。
- finalSize
- この要素がそれ自身とその子供を整理するのに使用する親内の最終的な領域。
戻り値: 実際のサイズは使われます。
private Size ComputeLargestTransformedSize(Size arrangeBounds)
result = layoutTransformer.ComputeLargestTransformedSize(arrangeBounds)
指定した境界に変換を適用した後、最大の使用可能なサイズ(比例面積)を計算します。
- arrangeBounds
- 境界線を配列する。
戻り値: 最大のサイズが可能。
private static void DiagnosticWriteLine(string message)
LayoutTransformer.DiagnosticWriteLine(message)
DIAGNOSTICWRITELINEが定義されている場合は、診断情報を出力します。
- message
- 診断メッセージ。
private Matrix GetTransformMatrix(Transform transform)
result = layoutTransformer.GetTransformMatrix(transform)
Transform(Group) を継承し、対応する Matrix を返します。
- transform
- トランスフォーメーション(グループ)を歩く
戻り値: 計算されたマトリックス。
private static bool IsSizeSmaller(Size a, Size b)
result = LayoutTransformer.IsSizeSmaller(a, b)
サイズがサイズbよりも小さい場合は、サイズが正しい場合は、真を返します。
- a
- 第二サイズ。
- b
- ファーストサイズ。
戻り値: サイズがサイズbよりも小さい場合は、どちらかの次元で真になります。
private static void LayoutTransformChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
LayoutTransformer.LayoutTransformChanged(o, e)
トランスフォームDependencyProperty@に変更を処理します。
- o
- 変更のソース。
- e
- イベントのargs.
private static bool MatrixHasInverse(Matrix matrix)
result = LayoutTransformer.MatrixHasInverse(matrix)
シルバーライトでWPFのMatrix.HasInverseを実装。
- matrix
- 逆にチェックする行列。
戻り値: マトリックスが逆に持っている場合、真になります。
private static Matrix MatrixMultiply(Matrix matrix1, Matrix matrix2)
result = LayoutTransformer.MatrixMultiply(matrix1, matrix2)
シルバーライトでWPFのMatrix.Multiplyを実装。
- matrix1
- 第一行列。
- matrix2
- 第二行列。
戻り値: 多重化の結果。
protected override Size MeasureOverride(Size availableSize)
result = layoutTransformer.MeasureOverride(availableSize)
レイアウトの「測定」パスの動作を提供します。
- availableSize
- この要素が子要素に与えることができる利用可能なサイズ。
戻り値: この要素が、子要素サイズの計算に基づいて、レイアウト中に必要とするサイズを決定します。
public override void OnApplyTemplate()
layoutTransformer.OnApplyTemplate()
テンプレートの新規適用時にLayoutTransformer制御用のビジュアルツリーを作成します。
private void ProcessTransform(Transform transform)
layoutTransformer.ProcessTransform(transform)
変換を処理して、対応するマトリックスを決定します。
- transform
- プロセスに変革する。
private static Rect RectTransform(Rect rect, Matrix matrix)
result = LayoutTransformer.RectTransform(rect, matrix)
シルバーライトでWPFのRect.Transformを実装。
- rect
- 変形するRect。
- matrix
- マトリックスで変換します。
戻り値: 変形させた長方形の箱。
private static Matrix RoundMatrix(Matrix matrix, int decimals)
result = LayoutTransformer.RoundMatrix(matrix, decimals)
浮動小数点の精度による問題を回避するために、マトリックスの非オフセット要素を丸めます。
- matrix
- マトリックスを丸めに。
- decimals
- 往復小数の場所の数。
戻り値: 丸型マトリックス。
フィールド
private const double AcceptableDelta
value = LayoutTransformer.AcceptableDelta
2つのダブルス間の許容差。
private const int DecimalsAfterRound
value = LayoutTransformer.DecimalsAfterRound
行列の数を行列に丸めます。
public static readonly DependencyProperty LayoutTransformProperty
value = LayoutTransformer.LayoutTransformProperty
代表取締役社長 佐藤 浩一
private const string PresenterName
value = LayoutTransformer.PresenterName
プレゼンターテンプレートの部分の名前。
private const string TransformRootName
value = LayoutTransformer.TransformRootName
テンプレートのTransformRootの名称
private Size _childActualSize
value = layoutTransformer._childActualSize
子要素のActualDesiredSize@(MeasureOverrideメソッドから返した値)。
private ContentPresenter _contentPresenter
value = layoutTransformer._contentPresenter
コンテンツを表示するContentPresenter要素。
private MatrixTransform _matrixTransform
value = layoutTransformer._matrixTransform
代表取締役社長 岡田 宏一
private Matrix _transformation
value = layoutTransformer._transformation
_matrixTransform@ に対応したトランスフォーメーションマトリクス
private Panel _transformRoot
value = layoutTransformer._transformRoot
変化を実行するためのルート要素。