Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / System / Windows / Media / MatrixTransform.cs / 1 / 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
- SqlProfileProvider.cs
- RowType.cs
- XmlParserContext.cs
- ParameterCollection.cs
- WebDescriptionAttribute.cs
- EndpointReference.cs
- DeobfuscatingStream.cs
- Odbc32.cs
- InstanceCreationEditor.cs
- PropertySourceInfo.cs
- MatrixAnimationUsingKeyFrames.cs
- CodeConstructor.cs
- SiteMapHierarchicalDataSourceView.cs
- UICuesEvent.cs
- BidirectionalDictionary.cs
- QueryInterceptorAttribute.cs
- XmlAutoDetectWriter.cs
- ReadonlyMessageFilter.cs
- BookmarkOptionsHelper.cs
- LocalizableResourceBuilder.cs
- GPRECT.cs
- SHA1Managed.cs
- WebBrowser.cs
- ListenerConfig.cs
- IDispatchConstantAttribute.cs
- UriTemplateTrieNode.cs
- SelectionEditingBehavior.cs
- ResXBuildProvider.cs
- Query.cs
- QualifiedCellIdBoolean.cs
- HtmlInputImage.cs
- QueryConverter.cs
- AllowedAudienceUriElement.cs
- _ShellExpression.cs
- RangeValidator.cs
- BridgeDataRecord.cs
- XmlBinaryReader.cs
- SignatureGenerator.cs
- DiscoveryMessageSequenceCD1.cs
- FixedDocumentPaginator.cs
- DesignerProperties.cs
- XMLSchema.cs
- EventSourceCreationData.cs
- ValidationSummary.cs
- Pkcs9Attribute.cs
- Oid.cs
- DataRowView.cs
- ProfilePropertyMetadata.cs
- GraphicsPathIterator.cs
- CodeCompileUnit.cs
- RegexMatchCollection.cs
- ObjectViewFactory.cs
- ReachFixedPageSerializer.cs
- JsonServiceDocumentSerializer.cs
- RelativeSource.cs
- SqlCommandBuilder.cs
- Vector3DAnimationUsingKeyFrames.cs
- QueryComponents.cs
- TypeConverter.cs
- RadioButtonList.cs
- FixedTextPointer.cs
- KeyTime.cs
- ExtenderControl.cs
- DynamicValidator.cs
- DataContext.cs
- SQLInt64.cs
- ApplicationId.cs
- RadialGradientBrush.cs
- XmlCountingReader.cs
- AutoGeneratedFieldProperties.cs
- AssemblySettingAttributes.cs
- ChannelManager.cs
- DataGridPagerStyle.cs
- DataGridViewTopLeftHeaderCell.cs
- PersonalizationAdministration.cs
- SystemWebCachingSectionGroup.cs
- OdbcConnectionStringbuilder.cs
- Operand.cs
- WindowsSpinner.cs
- LinqToSqlWrapper.cs
- SafeCancelMibChangeNotify.cs
- BindingSource.cs
- TextContainerChangeEventArgs.cs
- BaseDataList.cs
- ScriptHandlerFactory.cs
- XslAstAnalyzer.cs
- HttpFileCollectionBase.cs
- XmlUtf8RawTextWriter.cs
- DataGridViewAutoSizeModeEventArgs.cs
- ToolStripPanel.cs
- TextSelectionHighlightLayer.cs
- SHA1.cs
- Collection.cs
- PropertyFilterAttribute.cs
- Byte.cs
- TypeInitializationException.cs
- SqlException.cs
- ColorAnimation.cs
- FactoryGenerator.cs
- SqlCacheDependency.cs