Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Point3DIndependentAnimationStorage.cs
- DefaultBinder.cs
- CodeDirectionExpression.cs
- InputLangChangeRequestEvent.cs
- DataGridRowHeaderAutomationPeer.cs
- ObjectAssociationEndMapping.cs
- PeerTransportElement.cs
- ErrorStyle.cs
- Int16Storage.cs
- SerializationHelper.cs
- BooleanFacetDescriptionElement.cs
- HostedHttpContext.cs
- Cursors.cs
- FixUp.cs
- DesignerAdRotatorAdapter.cs
- Console.cs
- CollectionEditorDialog.cs
- HtmlImage.cs
- CompModSwitches.cs
- ContentOperations.cs
- ListViewItem.cs
- TreeViewItem.cs
- ExternalException.cs
- FileController.cs
- SizeKeyFrameCollection.cs
- DataReaderContainer.cs
- HtmlLink.cs
- ToolStripStatusLabel.cs
- StaticExtension.cs
- EncryptedData.cs
- DataGridCommandEventArgs.cs
- Win32PrintDialog.cs
- StrokeCollection2.cs
- TemplateBindingExpressionConverter.cs
- ContextMenuStrip.cs
- XmlRootAttribute.cs
- Psha1DerivedKeyGenerator.cs
- Size.cs
- bindurihelper.cs
- UnsafeNativeMethodsTablet.cs
- PropertyGeneratedEventArgs.cs
- WsdlWriter.cs
- bidPrivateBase.cs
- HopperCache.cs
- ExceptionHelpers.cs
- DESCryptoServiceProvider.cs
- ListManagerBindingsCollection.cs
- MulticastNotSupportedException.cs
- NegotiateStream.cs
- ObjectItemCollection.cs
- dbdatarecord.cs
- SqlConnectionPoolProviderInfo.cs
- ControlIdConverter.cs
- Events.cs
- LazyTextWriterCreator.cs
- TextRangeEdit.cs
- PanelStyle.cs
- RemoteWebConfigurationHostStream.cs
- PrincipalPermission.cs
- ParameterReplacerVisitor.cs
- SortQuery.cs
- DataTableTypeConverter.cs
- WindowsProgressbar.cs
- Mapping.cs
- EmptyImpersonationContext.cs
- ImageSource.cs
- SystemColorTracker.cs
- EditorZone.cs
- XmlSchemaSimpleContentExtension.cs
- DataGridLinkButton.cs
- NoClickablePointException.cs
- IgnoreFlushAndCloseStream.cs
- RuntimeUtils.cs
- TabPage.cs
- httpapplicationstate.cs
- ContextMenuStrip.cs
- SqlAliaser.cs
- CounterSample.cs
- GridViewSortEventArgs.cs
- DBSqlParserTable.cs
- LoadedOrUnloadedOperation.cs
- ConfigurationElement.cs
- HuffmanTree.cs
- TransformGroup.cs
- SevenBitStream.cs
- TextStore.cs
- ShapingWorkspace.cs
- EpmContentDeSerializer.cs
- DefinitionUpdate.cs
- PhonemeConverter.cs
- NumberAction.cs
- TextPattern.cs
- Dump.cs
- PrintingPermission.cs
- ImageDrawing.cs
- SecurityCriticalDataForSet.cs
- ClientSideProviderDescription.cs
- ClientScriptManagerWrapper.cs
- ServiceOperation.cs
- FastPropertyAccessor.cs