Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Media3D / RotateTransform3D.cs / 1 / 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. //---------------------------------------------------------------------------- // //// 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
- SplayTreeNode.cs
- HandleRef.cs
- DomainUpDown.cs
- CapabilitiesRule.cs
- MouseOverProperty.cs
- WindowsTokenRoleProvider.cs
- LoginName.cs
- SqlComparer.cs
- PropertyNames.cs
- ErrorFormatter.cs
- WhitespaceSignificantCollectionAttribute.cs
- CompareInfo.cs
- Transform3D.cs
- EncodingDataItem.cs
- DrawListViewSubItemEventArgs.cs
- SmiTypedGetterSetter.cs
- Aggregates.cs
- DWriteFactory.cs
- HtmlTableCellCollection.cs
- SequenceDesigner.cs
- Icon.cs
- ComponentChangedEvent.cs
- PrimarySelectionGlyph.cs
- TimeoutValidationAttribute.cs
- DurableEnlistmentState.cs
- DesignerSerializationOptionsAttribute.cs
- SafeCoTaskMem.cs
- ReadWriteObjectLock.cs
- XsdValidatingReader.cs
- EditBehavior.cs
- MetadataImporter.cs
- RequestCacheEntry.cs
- RoleExceptions.cs
- StylusPlugin.cs
- SqlProviderUtilities.cs
- SQLDecimalStorage.cs
- SecurityContext.cs
- TerminatorSinks.cs
- HttpCapabilitiesBase.cs
- Substitution.cs
- ProxyAttribute.cs
- WebPartCollection.cs
- CommandField.cs
- UnionExpr.cs
- XPathMessageFilter.cs
- DetailsViewDeletedEventArgs.cs
- ListItem.cs
- SamlAssertion.cs
- Resources.Designer.cs
- SamlAssertion.cs
- EventProviderWriter.cs
- ContourSegment.cs
- ImagingCache.cs
- COM2IProvidePropertyBuilderHandler.cs
- CookieParameter.cs
- Internal.cs
- ColumnHeaderConverter.cs
- SQLBinary.cs
- ConstructorNeedsTagAttribute.cs
- externdll.cs
- ValidationErrorCollection.cs
- PasswordRecovery.cs
- DetailsViewUpdatedEventArgs.cs
- WinEventWrap.cs
- EventLogPermissionEntry.cs
- SafeRegistryKey.cs
- wmiprovider.cs
- ComponentResourceKeyConverter.cs
- DetailsViewInsertedEventArgs.cs
- RectKeyFrameCollection.cs
- SetterTriggerConditionValueConverter.cs
- RequestCache.cs
- PolicyImporterElement.cs
- RootContext.cs
- XmlUrlResolver.cs
- ContainerUIElement3D.cs
- ListViewInsertEventArgs.cs
- BlockCollection.cs
- ResourceReader.cs
- EntityDataSourceWrapperPropertyDescriptor.cs
- ListViewItemMouseHoverEvent.cs
- VersionedStreamOwner.cs
- MailBnfHelper.cs
- StatusBar.cs
- XmlSchemaFacet.cs
- XmlSchemaExternal.cs
- BufferedGraphicsContext.cs
- HtmlTextBoxAdapter.cs
- SystemIcmpV6Statistics.cs
- HttpRuntimeSection.cs
- XmlLoader.cs
- Compiler.cs
- GestureRecognitionResult.cs
- CipherData.cs
- Journaling.cs
- DecoderNLS.cs
- CalculatedColumn.cs
- PtsHelper.cs
- SQLBinaryStorage.cs
- RadioButtonStandardAdapter.cs