Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media3D / Generated / Quaternion.cs / 1305600 / Quaternion.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // This file was generated, please do not edit it directly. // // Please see http://wiki/default.aspx/Microsoft.Projects.Avalon/MilCodeGen.html for more information. // //--------------------------------------------------------------------------- using MS.Internal; using MS.Internal.Collections; using MS.Internal.PresentationCore; using MS.Utility; using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Runtime.InteropServices; using System.Text; using System.Windows.Markup; using System.Windows.Media.Media3D.Converters; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Security; using System.Security.Permissions; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; using System.Windows.Media.Imaging; // These types are aliased to match the unamanaged names used in interop using BOOL = System.UInt32; using WORD = System.UInt16; using Float = System.Single; namespace System.Windows.Media.Media3D { [Serializable] [TypeConverter(typeof(QuaternionConverter))] [ValueSerializer(typeof(QuaternionValueSerializer))] // Used by MarkupWriter partial struct Quaternion : IFormattable { //----------------------------------------------------- // // Public Methods // //----------------------------------------------------- #region Public Methods ////// Compares two Quaternion instances for exact equality. /// Note that double values can acquire error when operated upon, such that /// an exact comparison between two values which are logically equal may fail. /// Furthermore, using this equality operator, Double.NaN is not equal to itself. /// ////// bool - true if the two Quaternion instances are exactly equal, false otherwise /// /// The first Quaternion to compare /// The second Quaternion to compare public static bool operator == (Quaternion quaternion1, Quaternion quaternion2) { if (quaternion1.IsDistinguishedIdentity || quaternion2.IsDistinguishedIdentity) { return quaternion1.IsIdentity == quaternion2.IsIdentity; } else { return quaternion1.X == quaternion2.X && quaternion1.Y == quaternion2.Y && quaternion1.Z == quaternion2.Z && quaternion1.W == quaternion2.W; } } ////// Compares two Quaternion instances for exact inequality. /// Note that double values can acquire error when operated upon, such that /// an exact comparison between two values which are logically equal may fail. /// Furthermore, using this equality operator, Double.NaN is not equal to itself. /// ////// bool - true if the two Quaternion instances are exactly unequal, false otherwise /// /// The first Quaternion to compare /// The second Quaternion to compare public static bool operator != (Quaternion quaternion1, Quaternion quaternion2) { return !(quaternion1 == quaternion2); } ////// Compares two Quaternion instances for object equality. In this equality /// Double.NaN is equal to itself, unlike in numeric equality. /// Note that double values can acquire error when operated upon, such that /// an exact comparison between two values which /// are logically equal may fail. /// ////// bool - true if the two Quaternion instances are exactly equal, false otherwise /// /// The first Quaternion to compare /// The second Quaternion to compare public static bool Equals (Quaternion quaternion1, Quaternion quaternion2) { if (quaternion1.IsDistinguishedIdentity || quaternion2.IsDistinguishedIdentity) { return quaternion1.IsIdentity == quaternion2.IsIdentity; } else { return quaternion1.X.Equals(quaternion2.X) && quaternion1.Y.Equals(quaternion2.Y) && quaternion1.Z.Equals(quaternion2.Z) && quaternion1.W.Equals(quaternion2.W); } } ////// Equals - compares this Quaternion with the passed in object. In this equality /// Double.NaN is equal to itself, unlike in numeric equality. /// Note that double values can acquire error when operated upon, such that /// an exact comparison between two values which /// are logically equal may fail. /// ////// bool - true if the object is an instance of Quaternion and if it's equal to "this". /// /// The object to compare to "this" public override bool Equals(object o) { if ((null == o) || !(o is Quaternion)) { return false; } Quaternion value = (Quaternion)o; return Quaternion.Equals(this,value); } ////// Equals - compares this Quaternion with the passed in object. In this equality /// Double.NaN is equal to itself, unlike in numeric equality. /// Note that double values can acquire error when operated upon, such that /// an exact comparison between two values which /// are logically equal may fail. /// ////// bool - true if "value" is equal to "this". /// /// The Quaternion to compare to "this" public bool Equals(Quaternion value) { return Quaternion.Equals(this, value); } ////// Returns the HashCode for this Quaternion /// ////// int - the HashCode for this Quaternion /// public override int GetHashCode() { if (IsDistinguishedIdentity) { return c_identityHashCode; } else { // Perform field-by-field XOR of HashCodes return X.GetHashCode() ^ Y.GetHashCode() ^ Z.GetHashCode() ^ W.GetHashCode(); } } ////// Parse - returns an instance converted from the provided string using /// the culture "en-US" /// string with Quaternion data /// public static Quaternion Parse(string source) { IFormatProvider formatProvider = System.Windows.Markup.TypeConverterHelper.InvariantEnglishUS; TokenizerHelper th = new TokenizerHelper(source, formatProvider); Quaternion value; String firstToken = th.NextTokenRequired(); // The token will already have had whitespace trimmed so we can do a // simple string compare. if (firstToken == "Identity") { value = Identity; } else { value = new Quaternion( Convert.ToDouble(firstToken, formatProvider), Convert.ToDouble(th.NextTokenRequired(), formatProvider), Convert.ToDouble(th.NextTokenRequired(), formatProvider), Convert.ToDouble(th.NextTokenRequired(), formatProvider)); } // There should be no more tokens in this string. th.LastTokenRequired(); return value; } #endregion Public Methods //------------------------------------------------------ // // Public Properties // //----------------------------------------------------- #region Public Properties #endregion Public Properties //------------------------------------------------------ // // Protected Methods // //------------------------------------------------------ #region Protected Methods #endregion ProtectedMethods //----------------------------------------------------- // // Internal Methods // //------------------------------------------------------ #region Internal Methods #endregion Internal Methods //----------------------------------------------------- // // Internal Properties // //----------------------------------------------------- #region Internal Properties ////// Creates a string representation of this object based on the current culture. /// ////// A string representation of this object. /// public override string ToString() { // Delegate to the internal method which implements all ToString calls. return ConvertToString(null /* format string */, null /* format provider */); } ////// Creates a string representation of this object based on the IFormatProvider /// passed in. If the provider is null, the CurrentCulture is used. /// ////// A string representation of this object. /// public string ToString(IFormatProvider provider) { // Delegate to the internal method which implements all ToString calls. return ConvertToString(null /* format string */, provider); } ////// Creates a string representation of this object based on the format string /// and IFormatProvider passed in. /// If the provider is null, the CurrentCulture is used. /// See the documentation for IFormattable for more information. /// ////// A string representation of this object. /// string IFormattable.ToString(string format, IFormatProvider provider) { // Delegate to the internal method which implements all ToString calls. return ConvertToString(format, provider); } ////// Creates a string representation of this object based on the format string /// and IFormatProvider passed in. /// If the provider is null, the CurrentCulture is used. /// See the documentation for IFormattable for more information. /// ////// A string representation of this object. /// internal string ConvertToString(string format, IFormatProvider provider) { if (IsIdentity) { return "Identity"; } // Helper to get the numeric list separator for a given culture. char separator = MS.Internal.TokenizerHelper.GetNumericListSeparator(provider); return String.Format(provider, "{1:" + format + "}{0}{2:" + format + "}{0}{3:" + format + "}{0}{4:" + format + "}", separator, _x, _y, _z, _w); } #endregion Internal Properties //----------------------------------------------------- // // Dependency Properties // //------------------------------------------------------ #region Dependency Properties #endregion Dependency Properties //----------------------------------------------------- // // Internal Fields // //------------------------------------------------------ #region Internal Fields #endregion Internal Fields #region Constructors //------------------------------------------------------ // // Constructors // //----------------------------------------------------- #endregion Constructors } } // 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
- ComboBox.cs
- CompModSwitches.cs
- TypeDescriptionProviderAttribute.cs
- JsonMessageEncoderFactory.cs
- HtmlElement.cs
- SoapTypeAttribute.cs
- XmlNotation.cs
- MULTI_QI.cs
- AdCreatedEventArgs.cs
- GridViewAutomationPeer.cs
- ObfuscateAssemblyAttribute.cs
- ParameterElement.cs
- AsymmetricCryptoHandle.cs
- AssemblyFilter.cs
- FtpRequestCacheValidator.cs
- oledbconnectionstring.cs
- TextRenderer.cs
- DynamicValueConverter.cs
- XPathNodeInfoAtom.cs
- CodeCastExpression.cs
- MailMessageEventArgs.cs
- WebPartCloseVerb.cs
- HatchBrush.cs
- LOSFormatter.cs
- _UncName.cs
- RectangleGeometry.cs
- StandardCommands.cs
- DrawingCollection.cs
- BinHexDecoder.cs
- CommentEmitter.cs
- DataGridItemEventArgs.cs
- CodeDirectoryCompiler.cs
- DocumentReference.cs
- SpinWait.cs
- BindingManagerDataErrorEventArgs.cs
- TableRow.cs
- CollectionViewGroupRoot.cs
- ExpressionQuoter.cs
- UnmanagedMarshal.cs
- GlobalizationAssembly.cs
- Function.cs
- IUnknownConstantAttribute.cs
- UriSectionData.cs
- AppManager.cs
- ServiceAppDomainAssociationProvider.cs
- TempFiles.cs
- RayMeshGeometry3DHitTestResult.cs
- ImportCatalogPart.cs
- MsmqIntegrationProcessProtocolHandler.cs
- SpotLight.cs
- SqlParameter.cs
- TreeViewImageKeyConverter.cs
- TemporaryBitmapFile.cs
- DesignerLoader.cs
- Psha1DerivedKeyGenerator.cs
- InvokeWebService.cs
- PathGeometry.cs
- HtmlInputControl.cs
- OleDbError.cs
- PrinterUnitConvert.cs
- XPathDocumentNavigator.cs
- NegatedCellConstant.cs
- KeyNotFoundException.cs
- TreeNodeBindingCollection.cs
- MainMenu.cs
- MetaTableHelper.cs
- PropertyMapper.cs
- AsnEncodedData.cs
- GridViewDeleteEventArgs.cs
- InheritanceUI.cs
- TemplateKeyConverter.cs
- ControlBuilder.cs
- ModelFunction.cs
- CredentialManagerDialog.cs
- TreeNodeStyle.cs
- FilterInvalidBodyAccessException.cs
- AutomationElementIdentifiers.cs
- ButtonBaseAutomationPeer.cs
- SimpleTypeResolver.cs
- ApplicationSecurityManager.cs
- SelectorItemAutomationPeer.cs
- EntityProxyFactory.cs
- QueryableFilterUserControl.cs
- CompilerGeneratedAttribute.cs
- EpmSyndicationContentSerializer.cs
- TextMessageEncoder.cs
- NativeMethods.cs
- PreviewKeyDownEventArgs.cs
- TripleDES.cs
- PersonalizationProvider.cs
- RSAPKCS1SignatureFormatter.cs
- StateRuntime.cs
- SelectionEditingBehavior.cs
- HtmlInputRadioButton.cs
- DataSourceCacheDurationConverter.cs
- Evidence.cs
- InfoCardAsymmetricCrypto.cs
- StrokeCollection.cs
- FlowLayoutPanel.cs
- ResourceManager.cs