Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media3D / RotateTransform3D.cs / 1305600 / RotateTransform3D.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: 3D rotate transforms. // // See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht // // History: // 06/04/2003 : t-gregr - Created // //--------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using MS.Internal; using System.ComponentModel.Design.Serialization; using System.Windows.Markup; namespace System.Windows.Media.Media3D { ////// 3D rotate transforms. /// public sealed partial class RotateTransform3D : AffineTransform3D { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// Default constructor. /// public RotateTransform3D() {} ////// Constructor from Rotation3D. /// /// Rotation3D. public RotateTransform3D(Rotation3D rotation) { Rotation = rotation; } ////// Constructor from Rotation3D and center point. /// /// Rotation3D. /// Center point. public RotateTransform3D(Rotation3D rotation, Point3D center) { Rotation = rotation; CenterX = center.X; CenterY = center.Y; CenterZ = center.Z; } ////// Constructor from Rotation3D and center point. /// /// Rotation3D. /// X center /// Y center /// Z center public RotateTransform3D(Rotation3D rotation, double centerX, double centerY, double centerZ) { Rotation = rotation; CenterX = centerX; CenterY = centerY; CenterZ = centerZ; } #endregion Constructors //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ #region Public Properties ////// Retrieves matrix representing the rotation. /// public override Matrix3D Value { get { ReadPreamble(); Rotation3D rotation = _cachedRotationValue; if (rotation == null) { return Matrix3D.Identity; } Quaternion quaternion = rotation.InternalQuaternion; Point3D center = new Point3D(_cachedCenterXValue, _cachedCenterYValue, _cachedCenterZValue); return Matrix3D.CreateRotationMatrix(ref quaternion, ref center); } } #endregion Public Properties internal override void Append(ref Matrix3D matrix) { matrix = matrix * Value; } } } // 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
- UInt32Converter.cs
- IdnElement.cs
- FtpCachePolicyElement.cs
- KeyTime.cs
- XmlStreamStore.cs
- MobileControlsSectionHandler.cs
- DataTableClearEvent.cs
- WpfKnownType.cs
- BitmapMetadataBlob.cs
- Enumerable.cs
- HttpCachePolicyWrapper.cs
- HotSpot.cs
- StringReader.cs
- VBIdentifierNameEditor.cs
- ReaderWriterLock.cs
- DependencyObjectProvider.cs
- DataGridViewAutoSizeModeEventArgs.cs
- ApplicationInterop.cs
- regiisutil.cs
- ModifierKeysValueSerializer.cs
- ExpressionEditorAttribute.cs
- SqlBulkCopyColumnMappingCollection.cs
- GatewayDefinition.cs
- ObservableDictionary.cs
- SafeFindHandle.cs
- DateTimeParse.cs
- PeerApplication.cs
- XmlSchemaObjectTable.cs
- TextDecorationCollection.cs
- TagPrefixCollection.cs
- SecureStringHasher.cs
- X509IssuerSerialKeyIdentifierClause.cs
- Int16Storage.cs
- CheckBoxBaseAdapter.cs
- DeviceSpecificDialogCachedState.cs
- AsynchronousChannelMergeEnumerator.cs
- ChangeProcessor.cs
- Int64AnimationUsingKeyFrames.cs
- ProxyManager.cs
- DescendentsWalkerBase.cs
- TabPanel.cs
- ToolStripContainer.cs
- ListControl.cs
- DataGridRowHeaderAutomationPeer.cs
- ErrorFormatter.cs
- PrimitiveXmlSerializers.cs
- MarkerProperties.cs
- DesignerRegionMouseEventArgs.cs
- ThreadExceptionDialog.cs
- FtpRequestCacheValidator.cs
- AsyncPostBackErrorEventArgs.cs
- _Events.cs
- LogEntrySerializer.cs
- SingleKeyFrameCollection.cs
- ThreadSafeList.cs
- ProvidersHelper.cs
- DesignerSerializationOptionsAttribute.cs
- COSERVERINFO.cs
- ListViewItemMouseHoverEvent.cs
- XPathParser.cs
- KeyInterop.cs
- Binding.cs
- PeerSecurityHelpers.cs
- ReaderOutput.cs
- UserPersonalizationStateInfo.cs
- AtomServiceDocumentSerializer.cs
- arclist.cs
- ClientSession.cs
- TypeConverterHelper.cs
- SelectedGridItemChangedEvent.cs
- GeneralTransform3D.cs
- SwitchLevelAttribute.cs
- SafeRegistryKey.cs
- IpcClientManager.cs
- ExpandCollapsePattern.cs
- JavaScriptObjectDeserializer.cs
- TextParaClient.cs
- DependencyObjectPropertyDescriptor.cs
- TimeSpanOrInfiniteConverter.cs
- DbConnectionStringCommon.cs
- AQNBuilder.cs
- SequenceDesigner.cs
- SiteOfOriginContainer.cs
- CodeTypeParameter.cs
- RelationshipFixer.cs
- ComponentSerializationService.cs
- DataGridCellsPanel.cs
- SchemaInfo.cs
- UntypedNullExpression.cs
- ConfigurationStrings.cs
- DataGridState.cs
- FactoryGenerator.cs
- messageonlyhwndwrapper.cs
- QuadraticBezierSegment.cs
- StylusTip.cs
- CardSpaceException.cs
- SqlTypesSchemaImporter.cs
- IIS7UserPrincipal.cs
- Transform3DGroup.cs
- InternalSafeNativeMethods.cs