Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media / MatrixTransform.cs / 1305600 / MatrixTransform.cs
//------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2001 // // File: MatrixTransform.cs //----------------------------------------------------------------------------- using System.Windows.Media; using System; using System.Windows; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Reflection; using System.Security; using System.Security.Permissions; using System.Collections; using MS.Internal; using MS.Internal.PresentationCore; using System.Windows.Media.Animation; using System.Globalization; using System.Text; using System.Runtime.InteropServices; using System.Windows.Media.Composition; using System.Diagnostics; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { ////// Create an arbitrary matrix transformation. /// public sealed partial class MatrixTransform : Transform { #region Constructors ////// /// public MatrixTransform() { } ////// Create an arbitrary matrix transformation. /// ///Matrix value at position 1,1 ///Matrix value at position 1,2 ///Matrix value at position 2,1 ///Matrix value at position 2,2 ///Matrix value at position 3,1 ///Matrix value at position 3,2 public MatrixTransform( double m11, double m12, double m21, double m22, double offsetX, double offsetY ) { Matrix = new Matrix(m11, m12, m21, m22, offsetX, offsetY); } ////// Create a matrix transformation from constant transform. /// ///The constant matrix transformation. public MatrixTransform(Matrix matrix) { Matrix = matrix; } #endregion ////// Return the current transformation value. /// public override Matrix Value { get { ReadPreamble(); return Matrix; } } #region Internal Methods ////// Returns true if transformation matches the identity transform. /// internal override bool IsIdentity { get { return Matrix.IsIdentity && CanFreeze; } } internal override bool CanSerializeToString() { return CanFreeze; } ////// Creates a string representation of this object based on the format string /// and IFormatProvider passed in. /// If the provider is null, the CurrentCulture is used. /// See the documentation for IFormattable for more information. /// ////// A string representation of this object. /// internal override string ConvertToString(string format, IFormatProvider provider) { if (!CanSerializeToString()) { return base.ConvertToString(format, provider); } return ((IFormattable)Matrix).ToString(format, provider); } internal override void TransformRect(ref Rect rect) { Matrix matrix = Matrix; MatrixUtil.TransformRect(ref rect, ref matrix); } internal override void MultiplyValueByMatrix(ref Matrix result, ref Matrix matrixToMultiplyBy) { result = Matrix; MatrixUtil.MultiplyMatrix(ref result, ref matrixToMultiplyBy); } #endregion Internal Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2001 // // File: MatrixTransform.cs //----------------------------------------------------------------------------- using System.Windows.Media; using System; using System.Windows; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Reflection; using System.Security; using System.Security.Permissions; using System.Collections; using MS.Internal; using MS.Internal.PresentationCore; using System.Windows.Media.Animation; using System.Globalization; using System.Text; using System.Runtime.InteropServices; using System.Windows.Media.Composition; using System.Diagnostics; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { ////// Create an arbitrary matrix transformation. /// public sealed partial class MatrixTransform : Transform { #region Constructors ////// /// public MatrixTransform() { } ////// Create an arbitrary matrix transformation. /// ///Matrix value at position 1,1 ///Matrix value at position 1,2 ///Matrix value at position 2,1 ///Matrix value at position 2,2 ///Matrix value at position 3,1 ///Matrix value at position 3,2 public MatrixTransform( double m11, double m12, double m21, double m22, double offsetX, double offsetY ) { Matrix = new Matrix(m11, m12, m21, m22, offsetX, offsetY); } ////// Create a matrix transformation from constant transform. /// ///The constant matrix transformation. public MatrixTransform(Matrix matrix) { Matrix = matrix; } #endregion ////// Return the current transformation value. /// public override Matrix Value { get { ReadPreamble(); return Matrix; } } #region Internal Methods ////// Returns true if transformation matches the identity transform. /// internal override bool IsIdentity { get { return Matrix.IsIdentity && CanFreeze; } } internal override bool CanSerializeToString() { return CanFreeze; } ////// Creates a string representation of this object based on the format string /// and IFormatProvider passed in. /// If the provider is null, the CurrentCulture is used. /// See the documentation for IFormattable for more information. /// ////// A string representation of this object. /// internal override string ConvertToString(string format, IFormatProvider provider) { if (!CanSerializeToString()) { return base.ConvertToString(format, provider); } return ((IFormattable)Matrix).ToString(format, provider); } internal override void TransformRect(ref Rect rect) { Matrix matrix = Matrix; MatrixUtil.TransformRect(ref rect, ref matrix); } internal override void MultiplyValueByMatrix(ref Matrix result, ref Matrix matrixToMultiplyBy) { result = Matrix; MatrixUtil.MultiplyMatrix(ref result, ref matrixToMultiplyBy); } #endregion Internal Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PageCatalogPart.cs
- PointCollection.cs
- processwaithandle.cs
- PropertyBuilder.cs
- RoleManagerSection.cs
- SystemParameters.cs
- HtmlInputImage.cs
- RenderTargetBitmap.cs
- ExtensionDataObject.cs
- SqlNotificationEventArgs.cs
- PasswordDeriveBytes.cs
- TrustLevelCollection.cs
- NullableDoubleAverageAggregationOperator.cs
- NumberAction.cs
- PngBitmapEncoder.cs
- CodeTypeReferenceExpression.cs
- DataGridCommandEventArgs.cs
- oledbmetadatacolumnnames.cs
- Classification.cs
- InvalidChannelBindingException.cs
- Stylus.cs
- XmlSerializerAssemblyAttribute.cs
- OdbcTransaction.cs
- XmlRawWriterWrapper.cs
- UInt16.cs
- WaitHandle.cs
- Sorting.cs
- X509ThumbprintKeyIdentifierClause.cs
- PrimitiveCodeDomSerializer.cs
- CodeDOMProvider.cs
- ListView.cs
- CompilerWrapper.cs
- ValidationManager.cs
- EnumConverter.cs
- DataAdapter.cs
- TextElementCollection.cs
- MembershipSection.cs
- StorageMappingItemLoader.cs
- SerializationHelper.cs
- VerificationException.cs
- TouchesOverProperty.cs
- ControlSerializer.cs
- AnchoredBlock.cs
- BitmapEffectGroup.cs
- CanExecuteRoutedEventArgs.cs
- MappingSource.cs
- SafeHandles.cs
- ToolStripSplitButton.cs
- CodeDomSerializerBase.cs
- HandleCollector.cs
- ChangeNode.cs
- ItemsPanelTemplate.cs
- XPathNavigatorReader.cs
- NavigateEvent.cs
- TypeSystem.cs
- EventRouteFactory.cs
- SettingsBindableAttribute.cs
- MobileControlBuilder.cs
- AspNetSynchronizationContext.cs
- SettingsPropertyNotFoundException.cs
- OverflowException.cs
- SystemWebCachingSectionGroup.cs
- DataGridViewTopRowAccessibleObject.cs
- QilSortKey.cs
- CodeDomLocalizationProvider.cs
- DCSafeHandle.cs
- Single.cs
- FrameworkElement.cs
- ServiceProviders.cs
- CompilerTypeWithParams.cs
- DataListItemCollection.cs
- Lease.cs
- QualifiedCellIdBoolean.cs
- TrustLevel.cs
- Buffer.cs
- DynamicPropertyHolder.cs
- TreeNode.cs
- ParentUndoUnit.cs
- SafeNativeMethods.cs
- CacheChildrenQuery.cs
- HashHelpers.cs
- EntityFunctions.cs
- ByteArrayHelperWithString.cs
- ChannelSinkStacks.cs
- BackgroundWorker.cs
- ReliabilityContractAttribute.cs
- NameSpaceExtractor.cs
- StateBag.cs
- HtmlShimManager.cs
- fixedPageContentExtractor.cs
- GridItemProviderWrapper.cs
- AutoFocusStyle.xaml.cs
- XmlText.cs
- DataServiceOperationContext.cs
- IssuerInformation.cs
- hresults.cs
- PhoneCallDesigner.cs
- EncoderNLS.cs
- rsa.cs
- DrawingAttributesDefaultValueFactory.cs