internal void EnsureRenderedGeometry() { if (_renderedGeometry == null) { _renderedGeometry = DefiningGeometry; Debug.Assert(_renderedGeometry != null); if (Stretch != Stretch.None) { Geometry currentValue = _renderedGeometry.CloneCurrentValue(); if (Object.ReferenceEquals(_renderedGeometry, currentValue)) { _renderedGeometry = currentValue.Clone(); } else { _renderedGeometry = currentValue; } Transform renderedTransform = _renderedGeometry.Transform; BoxedMatrix boxedStretchMatrix = StretchMatrixField.GetValue(this); Matrix stretchMatrix = (boxedStretchMatrix == null) ? Matrix.Identity : boxedStretchMatrix.Value; if (renderedTransform == null || renderedTransform.IsIdentity) { _renderedGeometry.Transform = new MatrixTransform(stretchMatrix); } else { _renderedGeometry.Transform = new MatrixTransform(renderedTransform.Value * stretchMatrix); } } } }
// Token: 0x06000F83 RID: 3971 RVA: 0x0003C3F0 File Offset: 0x0003A5F0 internal void EnsureRenderedGeometry() { if (this._renderedGeometry == null) { this._renderedGeometry = this.DefiningGeometry; if (this.Stretch != Stretch.None) { Geometry geometry = this._renderedGeometry.CloneCurrentValue(); if (this._renderedGeometry == geometry) { this._renderedGeometry = geometry.Clone(); } else { this._renderedGeometry = geometry; } Transform transform = this._renderedGeometry.Transform; BoxedMatrix value = Shape.StretchMatrixField.GetValue(this); Matrix matrix = (value == null) ? Matrix.Identity : value.Value; if (transform == null || transform.IsIdentity) { this._renderedGeometry.Transform = new MatrixTransform(matrix); return; } this._renderedGeometry.Transform = new MatrixTransform(transform.Value * matrix); } } }