Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Media3D / RotateTransform3D.cs / 1 / RotateTransform3D.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: 3D rotate transforms.
//
// See spec at [....]/medialayer/Specifications/Avalon3D%20API%20Spec.mht
//
// History:
// 06/04/2003 : [....] - 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
- TableLayoutSettings.cs
- ProtocolViolationException.cs
- WmlLiteralTextAdapter.cs
- BaseDataList.cs
- RelatedCurrencyManager.cs
- ValueSerializerAttribute.cs
- PageParserFilter.cs
- TemplateBindingExtensionConverter.cs
- PagesSection.cs
- SchemaElementDecl.cs
- CaretElement.cs
- NameNode.cs
- SerializationTrace.cs
- RuleElement.cs
- IRCollection.cs
- MetadataWorkspace.cs
- ToggleButton.cs
- XmlSortKey.cs
- LinqDataSourceStatusEventArgs.cs
- AssociationType.cs
- GroupItem.cs
- MemoryPressure.cs
- ListControlDesigner.cs
- Nullable.cs
- EntityDataSourceMemberPath.cs
- DeferredReference.cs
- SmiRequestExecutor.cs
- System.Data_BID.cs
- Geometry.cs
- ImageIndexConverter.cs
- ValidatorUtils.cs
- XmlUtf8RawTextWriter.cs
- XPathCompiler.cs
- DeviceFilterDictionary.cs
- GroupQuery.cs
- EtwTrackingBehavior.cs
- RowType.cs
- SwitchAttribute.cs
- Tile.cs
- SecurityTokenRequirement.cs
- TimeStampChecker.cs
- Control.cs
- DefaultIfEmptyQueryOperator.cs
- Native.cs
- BaseTemplateCodeDomTreeGenerator.cs
- MultiSelectRootGridEntry.cs
- FontNamesConverter.cs
- XPathNodeInfoAtom.cs
- EntryWrittenEventArgs.cs
- ToolStripItemDesigner.cs
- ExclusiveCanonicalizationTransform.cs
- HeaderUtility.cs
- ExpressionBuilder.cs
- TableChangeProcessor.cs
- ImageKeyConverter.cs
- CompensatableTransactionScopeActivity.cs
- BitmapEffectInput.cs
- Lasso.cs
- GlyphCache.cs
- VideoDrawing.cs
- SecurityException.cs
- TextCollapsingProperties.cs
- FaultDescriptionCollection.cs
- ProvidePropertyAttribute.cs
- OleDbError.cs
- ProxyElement.cs
- WebPartVerbCollection.cs
- DatagridviewDisplayedBandsData.cs
- RowCache.cs
- XpsFilter.cs
- SrgsElementList.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- ClientTarget.cs
- PeerCollaborationPermission.cs
- PagedDataSource.cs
- CultureInfoConverter.cs
- Control.cs
- DocumentAutomationPeer.cs
- ConnectionStringsSection.cs
- UnsafeNativeMethods.cs
- TextDecorationCollection.cs
- XmlSchemaFacet.cs
- BaseAsyncResult.cs
- MimeXmlReflector.cs
- OleDbFactory.cs
- RandomNumberGenerator.cs
- DataGridToolTip.cs
- WindowsSpinner.cs
- baseaxisquery.cs
- DrawingCollection.cs
- VBIdentifierNameEditor.cs
- XmlRawWriterWrapper.cs
- InputProviderSite.cs
- ConstructorBuilder.cs
- SerializationException.cs
- PenThreadPool.cs
- StrokeSerializer.cs
- PauseStoryboard.cs
- DataGridViewCellPaintingEventArgs.cs
- UserNameServiceElement.cs