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
- SecurityValidationBehavior.cs
- ApplicationActivator.cs
- _CacheStreams.cs
- FigureParagraph.cs
- DataObject.cs
- DataGridViewCellStyleChangedEventArgs.cs
- SqlPersistenceWorkflowInstanceDescription.cs
- WindowsToolbarAsMenu.cs
- PreviewKeyDownEventArgs.cs
- DataGridViewCellMouseEventArgs.cs
- cookiecollection.cs
- PageAdapter.cs
- PersonalizationStateInfo.cs
- DocumentsTrace.cs
- VarRefManager.cs
- TitleStyle.cs
- RestHandlerFactory.cs
- FileDialog_Vista_Interop.cs
- MeshGeometry3D.cs
- ModuleBuilderData.cs
- DoubleIndependentAnimationStorage.cs
- ComponentCollection.cs
- CodeAssignStatement.cs
- HttpRuntimeSection.cs
- SplineQuaternionKeyFrame.cs
- SmiEventSink.cs
- CodeIndexerExpression.cs
- HttpInputStream.cs
- EntityReference.cs
- EntityStoreSchemaGenerator.cs
- PageThemeBuildProvider.cs
- XPathNodeInfoAtom.cs
- ItemCheckEvent.cs
- StrokeNodeOperations.cs
- ProfilePropertyMetadata.cs
- ParseHttpDate.cs
- TouchesCapturedWithinProperty.cs
- AuthenticationService.cs
- WSHttpTransportSecurityElement.cs
- XmlTextReaderImpl.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- ApplicationFileParser.cs
- DataGridViewLayoutData.cs
- Opcode.cs
- DataBindingCollection.cs
- XamlBrushSerializer.cs
- Constants.cs
- LinqDataSource.cs
- NativeMethodsOther.cs
- UniqueConstraint.cs
- RelationshipFixer.cs
- COAUTHIDENTITY.cs
- EntityDataSourceViewSchema.cs
- KeyInstance.cs
- StateElement.cs
- ByteConverter.cs
- DateTimeValueSerializer.cs
- ButtonChrome.cs
- XslNumber.cs
- ThrowOnMultipleAssignment.cs
- HitTestFilterBehavior.cs
- Int32KeyFrameCollection.cs
- cookieexception.cs
- HttpListenerRequest.cs
- OuterGlowBitmapEffect.cs
- XmlSchemaInferenceException.cs
- SimpleLine.cs
- BasicKeyConstraint.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- MouseGestureValueSerializer.cs
- MenuEventArgs.cs
- RuntimeWrappedException.cs
- ContainerCodeDomSerializer.cs
- ProviderConnectionPointCollection.cs
- SchemaCompiler.cs
- DispatcherBuilder.cs
- ObjectKeyFrameCollection.cs
- ReferenceEqualityComparer.cs
- DynamicDiscoveryDocument.cs
- DetailsViewRowCollection.cs
- TextEncodedRawTextWriter.cs
- ThaiBuddhistCalendar.cs
- ByteStack.cs
- Paragraph.cs
- UriTemplateTable.cs
- counter.cs
- Section.cs
- wmiprovider.cs
- XmlSchemaCollection.cs
- RuntimeConfig.cs
- NamespaceList.cs
- EnterpriseServicesHelper.cs
- IpcServerChannel.cs
- DateTimeSerializationSection.cs
- RealizedColumnsBlock.cs
- DesignTimeXamlWriter.cs
- PolyQuadraticBezierSegment.cs
- MemoryFailPoint.cs
- FixedPosition.cs
- SqlConnectionManager.cs