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
- SmiRequestExecutor.cs
- AnnotationService.cs
- ButtonBaseAutomationPeer.cs
- Publisher.cs
- ImageSource.cs
- dsa.cs
- PageThemeBuildProvider.cs
- Stylesheet.cs
- TransactionFlowBindingElementImporter.cs
- SqlMethods.cs
- PointValueSerializer.cs
- SoapDocumentServiceAttribute.cs
- DataColumnChangeEvent.cs
- CodeGeneratorAttribute.cs
- ValidationHelper.cs
- ConfigurationValidatorAttribute.cs
- ImagingCache.cs
- TextDecorationCollection.cs
- DesignerLoader.cs
- InputScope.cs
- ConstraintCollection.cs
- StylusButton.cs
- HtmlTextArea.cs
- RequestSecurityToken.cs
- ComponentEditorPage.cs
- SpellerStatusTable.cs
- Journaling.cs
- InfoCardSymmetricAlgorithm.cs
- MarkerProperties.cs
- ClientOperation.cs
- PocoEntityKeyStrategy.cs
- DisableDpiAwarenessAttribute.cs
- SchemaAttDef.cs
- DecimalConverter.cs
- ServiceOperation.cs
- ContentElement.cs
- TextEditorLists.cs
- CalendarItem.cs
- DuplicateWaitObjectException.cs
- EncryptedType.cs
- Hashtable.cs
- CompilationUtil.cs
- FontNamesConverter.cs
- input.cs
- OdbcConnectionOpen.cs
- DataGridViewCellCollection.cs
- DropDownList.cs
- HtmlInputButton.cs
- IIS7WorkerRequest.cs
- PrivacyNoticeBindingElement.cs
- DuplicateContext.cs
- IdentityManager.cs
- PolicyImporterElementCollection.cs
- TextProviderWrapper.cs
- TextChange.cs
- DiscoveryDocumentReference.cs
- InternalControlCollection.cs
- ScriptingWebServicesSectionGroup.cs
- ThousandthOfEmRealPoints.cs
- DataServiceStreamResponse.cs
- TreeNodeCollection.cs
- AmbientValueAttribute.cs
- WeakReferenceEnumerator.cs
- BoundField.cs
- GridViewCellAutomationPeer.cs
- DataGridViewCellStyleConverter.cs
- ScriptingWebServicesSectionGroup.cs
- EdmError.cs
- _AcceptOverlappedAsyncResult.cs
- HttpUnhandledOperationInvoker.cs
- MergablePropertyAttribute.cs
- TemplateContainer.cs
- RadioButtonList.cs
- Page.cs
- ipaddressinformationcollection.cs
- _TransmitFileOverlappedAsyncResult.cs
- PropertyContainer.cs
- EnvironmentPermission.cs
- SafePointer.cs
- Internal.cs
- HttpCacheVary.cs
- DocumentSequenceHighlightLayer.cs
- NameValueFileSectionHandler.cs
- TextServicesCompartment.cs
- ConnectionOrientedTransportBindingElement.cs
- UserControlCodeDomTreeGenerator.cs
- ProfileSettings.cs
- LongAverageAggregationOperator.cs
- EntityViewGenerator.cs
- WebPartUtil.cs
- StreamSecurityUpgradeAcceptorAsyncResult.cs
- XmlConvert.cs
- WorkflowRuntimeServicesBehavior.cs
- KoreanLunisolarCalendar.cs
- DiscoveryDocumentSerializer.cs
- FamilyCollection.cs
- ReadOnlyTernaryTree.cs
- TextWriterEngine.cs
- StoreAnnotationsMap.cs
- EditCommandColumn.cs