Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / MS / Internal / Media3D / GeneralTransform3DTo2DTo3D.cs / 1 / GeneralTransform3DTo2DTo3D.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Declaration of the GeneralTransform3DTo2DTo3D class. // //--------------------------------------------------------------------------- using MS.Internal; using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Runtime.InteropServices; using System.Security.Permissions; using System.Windows; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Windows.Markup; using System.Windows.Media.Media3D; using MS.Internal.PresentationCore; namespace MS.Internal.Media3D { ////// GeneralTransform3DTo2DTo3D class provides services to transform points from 3D to 2D to 3D /// internal class GeneralTransform3DTo2DTo3D : GeneralTransform3D { internal GeneralTransform3DTo2DTo3D() { } internal GeneralTransform3DTo2DTo3D(GeneralTransform3DTo2D transform3DTo2D, GeneralTransform2DTo3D transform2DTo3D) { Debug.Assert(transform3DTo2D != null && transform2DTo3D != null); _transform3DTo2D = (GeneralTransform3DTo2D)transform3DTo2D.GetAsFrozen(); _transform2DTo3D = (GeneralTransform2DTo3D)transform2DTo3D.GetAsFrozen(); } ////// Transform a point /// /// Input point /// Output point ///True if the point was transformed successfuly, false otherwise public override bool TryTransform(Point3D inPoint, out Point3D result) { Point intermediate2DPoint = new Point(); result = new Point3D(); if (_transform3DTo2D == null || !_transform3DTo2D.TryTransform(inPoint, out intermediate2DPoint)) { return false; } if (_transform2DTo3D == null || !_transform2DTo3D.TryTransform(intermediate2DPoint, out result)) { return false; } return true; } ////// Returns the inverse transform if it has an inverse, null otherwise. /// In this case we can only transform in one direction due to the ray being created /// so the inverse is null. /// public override GeneralTransform3D Inverse { get { return null; } } ////// Returns a best effort affine transform /// internal override Transform3D AffineTransform { [FriendAccessAllowed] // Built into Core, also used by Framework. get { return null; } } ////// Transforms the bounding box to the smallest axis aligned bounding box /// that contains all the points in the original bounding box /// /// Bounding box ///The transformed bounding box public override Rect3D TransformBounds(Rect3D rect) { throw new NotImplementedException(); } ////// Implementation of ///Freezable.CreateInstanceCore . ///The new Freezable. protected override Freezable CreateInstanceCore() { return new GeneralTransform3DTo2DTo3D(); } ////// Implementation of /// protected override void CloneCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.CloneCore(sourceFreezable); CopyCommon(transform); } ///Freezable.CloneCore . ////// Implementation of /// protected override void CloneCurrentValueCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.CloneCurrentValueCore(sourceFreezable); CopyCommon(transform); } ///Freezable.CloneCurrentValueCore . ////// Implementation of /// protected override void GetAsFrozenCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.GetAsFrozenCore(sourceFreezable); CopyCommon(transform); } ///Freezable.GetAsFrozenCore . ////// Implementation of /// protected override void GetCurrentValueAsFrozenCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.GetCurrentValueAsFrozenCore(sourceFreezable); CopyCommon(transform); } ///Freezable.GetCurrentValueAsFrozenCore . ////// Clones values that do not have corresponding DPs /// /// private void CopyCommon(GeneralTransform3DTo2DTo3D transform) { _transform3DTo2D = transform._transform3DTo2D; _transform2DTo3D = transform._transform2DTo3D; } GeneralTransform3DTo2D _transform3DTo2D; GeneralTransform2DTo3D _transform2DTo3D; } } // 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: Declaration of the GeneralTransform3DTo2DTo3D class. // //--------------------------------------------------------------------------- using MS.Internal; using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Runtime.InteropServices; using System.Security.Permissions; using System.Windows; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Windows.Markup; using System.Windows.Media.Media3D; using MS.Internal.PresentationCore; namespace MS.Internal.Media3D { ////// GeneralTransform3DTo2DTo3D class provides services to transform points from 3D to 2D to 3D /// internal class GeneralTransform3DTo2DTo3D : GeneralTransform3D { internal GeneralTransform3DTo2DTo3D() { } internal GeneralTransform3DTo2DTo3D(GeneralTransform3DTo2D transform3DTo2D, GeneralTransform2DTo3D transform2DTo3D) { Debug.Assert(transform3DTo2D != null && transform2DTo3D != null); _transform3DTo2D = (GeneralTransform3DTo2D)transform3DTo2D.GetAsFrozen(); _transform2DTo3D = (GeneralTransform2DTo3D)transform2DTo3D.GetAsFrozen(); } ////// Transform a point /// /// Input point /// Output point ///True if the point was transformed successfuly, false otherwise public override bool TryTransform(Point3D inPoint, out Point3D result) { Point intermediate2DPoint = new Point(); result = new Point3D(); if (_transform3DTo2D == null || !_transform3DTo2D.TryTransform(inPoint, out intermediate2DPoint)) { return false; } if (_transform2DTo3D == null || !_transform2DTo3D.TryTransform(intermediate2DPoint, out result)) { return false; } return true; } ////// Returns the inverse transform if it has an inverse, null otherwise. /// In this case we can only transform in one direction due to the ray being created /// so the inverse is null. /// public override GeneralTransform3D Inverse { get { return null; } } ////// Returns a best effort affine transform /// internal override Transform3D AffineTransform { [FriendAccessAllowed] // Built into Core, also used by Framework. get { return null; } } ////// Transforms the bounding box to the smallest axis aligned bounding box /// that contains all the points in the original bounding box /// /// Bounding box ///The transformed bounding box public override Rect3D TransformBounds(Rect3D rect) { throw new NotImplementedException(); } ////// Implementation of ///Freezable.CreateInstanceCore . ///The new Freezable. protected override Freezable CreateInstanceCore() { return new GeneralTransform3DTo2DTo3D(); } ////// Implementation of /// protected override void CloneCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.CloneCore(sourceFreezable); CopyCommon(transform); } ///Freezable.CloneCore . ////// Implementation of /// protected override void CloneCurrentValueCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.CloneCurrentValueCore(sourceFreezable); CopyCommon(transform); } ///Freezable.CloneCurrentValueCore . ////// Implementation of /// protected override void GetAsFrozenCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.GetAsFrozenCore(sourceFreezable); CopyCommon(transform); } ///Freezable.GetAsFrozenCore . ////// Implementation of /// protected override void GetCurrentValueAsFrozenCore(Freezable sourceFreezable) { GeneralTransform3DTo2DTo3D transform = (GeneralTransform3DTo2DTo3D)sourceFreezable; base.GetCurrentValueAsFrozenCore(sourceFreezable); CopyCommon(transform); } ///Freezable.GetCurrentValueAsFrozenCore . ////// Clones values that do not have corresponding DPs /// /// private void CopyCommon(GeneralTransform3DTo2DTo3D transform) { _transform3DTo2D = transform._transform3DTo2D; _transform2DTo3D = transform._transform2DTo3D; } GeneralTransform3DTo2D _transform3DTo2D; GeneralTransform2DTo3D _transform2DTo3D; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HtmlImage.cs
- MonthChangedEventArgs.cs
- ProcessModule.cs
- HashMembershipCondition.cs
- SqlCacheDependencyDatabase.cs
- BrowserDefinition.cs
- recordstatefactory.cs
- DesignTimeHTMLTextWriter.cs
- BitmapDownload.cs
- _TransmitFileOverlappedAsyncResult.cs
- UnsafeNativeMethods.cs
- OdbcRowUpdatingEvent.cs
- ListViewDeletedEventArgs.cs
- DoubleCollectionValueSerializer.cs
- LoadWorkflowByInstanceKeyCommand.cs
- ToolStripSplitStackLayout.cs
- XMLSchema.cs
- LeftCellWrapper.cs
- _ConnectionGroup.cs
- WindowsGraphics.cs
- SmtpNetworkElement.cs
- VisualTarget.cs
- DbConnectionOptions.cs
- HttpModule.cs
- SHA256Managed.cs
- RsaSecurityKey.cs
- StringPropertyBuilder.cs
- CollectionCodeDomSerializer.cs
- TextControlDesigner.cs
- COMException.cs
- BasicKeyConstraint.cs
- COM2PictureConverter.cs
- InvalidDataException.cs
- Roles.cs
- FacetChecker.cs
- ArraySubsetEnumerator.cs
- DrawListViewItemEventArgs.cs
- SecurityContextSecurityTokenParameters.cs
- CodeTypeParameter.cs
- Root.cs
- SchemaDeclBase.cs
- InsufficientMemoryException.cs
- MetadataAssemblyHelper.cs
- Rss20FeedFormatter.cs
- PeerDuplexChannelListener.cs
- OptimalTextSource.cs
- FormsAuthenticationConfiguration.cs
- SignedInfo.cs
- UIElementHelper.cs
- ObjectResult.cs
- assemblycache.cs
- Converter.cs
- querybuilder.cs
- Win32KeyboardDevice.cs
- TemplateAction.cs
- SchemaCollectionPreprocessor.cs
- ToolZone.cs
- ChtmlImageAdapter.cs
- Journaling.cs
- TemplateBamlTreeBuilder.cs
- InvalidComObjectException.cs
- UpdateExpressionVisitor.cs
- ReadWriteSpinLock.cs
- DefaultHttpHandler.cs
- WebZone.cs
- StrongNameKeyPair.cs
- ComponentTray.cs
- WindowsClientCredential.cs
- TraceSection.cs
- XmlReflectionImporter.cs
- AdapterUtil.cs
- ProviderConnectionPoint.cs
- BinaryObjectReader.cs
- IriParsingElement.cs
- EditorPartChrome.cs
- DelegatingHeader.cs
- StylusLogic.cs
- UInt32Converter.cs
- SqlDataSourceStatusEventArgs.cs
- ObjectViewFactory.cs
- PackageRelationshipSelector.cs
- GridLengthConverter.cs
- Evidence.cs
- EntityConnection.cs
- SystemBrushes.cs
- DataGridColumnCollection.cs
- SmtpSection.cs
- AjaxFrameworkAssemblyAttribute.cs
- RoleBoolean.cs
- SHA1.cs
- ExternalFile.cs
- TreeViewHitTestInfo.cs
- DragStartedEventArgs.cs
- PolyQuadraticBezierSegment.cs
- PageBreakRecord.cs
- SecurityTokenSerializer.cs
- IsolatedStorageFileStream.cs
- CodeTypeDeclarationCollection.cs
- AnnotationAuthorChangedEventArgs.cs
- EventDescriptorCollection.cs