GeneralTransform3D.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / System / Windows / Media3D / GeneralTransform3D.cs / 1 / GeneralTransform3D.cs

                            //---------------------------------------------------------------------------- 
//
// 
//    Copyright (C) Microsoft Corporation.  All rights reserved.
//  
//
// 
// Description: Declaration of the GeneralTransform3D 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.Animation; 
using System.Windows.Media.Composition;
using System.Windows.Markup; 
using System.Windows.Media.Media3D; 
using MS.Internal.PresentationCore;
 
namespace System.Windows.Media.Media3D
{
    /// 
    /// GeneralTransform3D class provides services to transform points and rects 
    /// 
    [Localizability(LocalizationCategory.None, Readability = Readability.Unreadable)] 
    public abstract partial class GeneralTransform3D : Animatable 
    {
        ///  
        /// Constructor
        /// 
        internal GeneralTransform3D()
        { 
        }
 
        ///  
        /// Transform a point
        ///  
        /// Input point
        /// Output point
        /// True if the point was transformed successfuly, false otherwise
        public abstract bool TryTransform(Point3D inPoint, out Point3D result); 

        ///  
        /// Transform a point 
        ///
        /// If the transformation does not succeed, this will throw an InvalidOperationException. 
        /// If you don't want to try/catch, call TryTransform instead and check the boolean it
        /// returns.
        ///
        ///  
        /// Input point
        /// The transformed point 
        public Point3D Transform(Point3D point) 
        {
            Point3D transformedPoint; 

            if (!TryTransform(point, out transformedPoint))
            {
                throw new InvalidOperationException(SR.Get(SRID.GeneralTransform_TransformFailed, null)); 
            }
 
            return transformedPoint; 
        }
 
        /// 
        /// 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 abstract Rect3D TransformBounds(Rect3D rect); 

 
        /// 
        /// Returns the inverse transform if it has an inverse, null otherwise
        /// 
        public abstract GeneralTransform3D Inverse { get; } 

        ///  
        /// Returns a best effort affine transform 
        /// 
        internal abstract Transform3D AffineTransform 
        {
            [FriendAccessAllowed] // Built into Core, also used by Framework.
            get;
        } 
    }
} 
 

// 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 GeneralTransform3D 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.Animation; 
using System.Windows.Media.Composition;
using System.Windows.Markup; 
using System.Windows.Media.Media3D; 
using MS.Internal.PresentationCore;
 
namespace System.Windows.Media.Media3D
{
    /// 
    /// GeneralTransform3D class provides services to transform points and rects 
    /// 
    [Localizability(LocalizationCategory.None, Readability = Readability.Unreadable)] 
    public abstract partial class GeneralTransform3D : Animatable 
    {
        ///  
        /// Constructor
        /// 
        internal GeneralTransform3D()
        { 
        }
 
        ///  
        /// Transform a point
        ///  
        /// Input point
        /// Output point
        /// True if the point was transformed successfuly, false otherwise
        public abstract bool TryTransform(Point3D inPoint, out Point3D result); 

        ///  
        /// Transform a point 
        ///
        /// If the transformation does not succeed, this will throw an InvalidOperationException. 
        /// If you don't want to try/catch, call TryTransform instead and check the boolean it
        /// returns.
        ///
        ///  
        /// Input point
        /// The transformed point 
        public Point3D Transform(Point3D point) 
        {
            Point3D transformedPoint; 

            if (!TryTransform(point, out transformedPoint))
            {
                throw new InvalidOperationException(SR.Get(SRID.GeneralTransform_TransformFailed, null)); 
            }
 
            return transformedPoint; 
        }
 
        /// 
        /// 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 abstract Rect3D TransformBounds(Rect3D rect); 

 
        /// 
        /// Returns the inverse transform if it has an inverse, null otherwise
        /// 
        public abstract GeneralTransform3D Inverse { get; } 

        ///  
        /// Returns a best effort affine transform 
        /// 
        internal abstract Transform3D AffineTransform 
        {
            [FriendAccessAllowed] // Built into Core, also used by Framework.
            get;
        } 
    }
} 
 

// 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
This book is available now!
Buy at Amazon US or
Buy at Amazon UK