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
- DesignBindingEditor.cs
- SqlClientPermission.cs
- ProvidePropertyAttribute.cs
- GetPageCompletedEventArgs.cs
- KnownBoxes.cs
- InternalException.cs
- FixUp.cs
- ArrayHelper.cs
- RC2CryptoServiceProvider.cs
- SqlUtils.cs
- LayeredChannelFactory.cs
- MasterPageCodeDomTreeGenerator.cs
- ShowExpandedMultiValueConverter.cs
- DataColumnCollection.cs
- DetailsViewUpdatedEventArgs.cs
- ScrollBar.cs
- ClientUrlResolverWrapper.cs
- CompositeActivityTypeDescriptor.cs
- Column.cs
- FontInfo.cs
- ToolbarAUtomationPeer.cs
- OperationAbortedException.cs
- InstanceHandleReference.cs
- SoapCodeExporter.cs
- DesignerHierarchicalDataSourceView.cs
- ValueCollectionParameterReader.cs
- panel.cs
- StateDesigner.LayoutSelectionGlyph.cs
- ProviderIncompatibleException.cs
- XmlSchemaAny.cs
- WebPartExportVerb.cs
- RequestDescription.cs
- BinaryFormatter.cs
- DataGridRelationshipRow.cs
- Error.cs
- RequestQueue.cs
- GlobalItem.cs
- DataIdProcessor.cs
- DataServiceQueryContinuation.cs
- ValidationError.cs
- BaseDataBoundControl.cs
- AdPostCacheSubstitution.cs
- InstanceNameConverter.cs
- AdornerDecorator.cs
- SnapshotChangeTrackingStrategy.cs
- ReturnEventArgs.cs
- TextComposition.cs
- WhitespaceReader.cs
- FlowLayout.cs
- HtmlElementCollection.cs
- HelpProvider.cs
- IdentityElement.cs
- DataObjectFieldAttribute.cs
- BooleanKeyFrameCollection.cs
- BoundConstants.cs
- HtmlControl.cs
- GridViewRowPresenterBase.cs
- ModifierKeysValueSerializer.cs
- ResourceDescriptionAttribute.cs
- RuntimeConfig.cs
- ProtocolsConfigurationHandler.cs
- TreeNode.cs
- RoutedEvent.cs
- DataContractSet.cs
- ZoneIdentityPermission.cs
- ItemMap.cs
- Animatable.cs
- AnnotationHighlightLayer.cs
- BindingExpressionUncommonField.cs
- Process.cs
- ReadOnlyNameValueCollection.cs
- CryptoProvider.cs
- CodeTypeDeclaration.cs
- ImmComposition.cs
- ReferencedCategoriesDocument.cs
- TextTreeNode.cs
- DrawingBrush.cs
- InkCanvasSelectionAdorner.cs
- HwndStylusInputProvider.cs
- ExternalDataExchangeService.cs
- DataPager.cs
- SapiRecoInterop.cs
- RequestQueryParser.cs
- SmtpNetworkElement.cs
- DataControlLinkButton.cs
- ProfileService.cs
- GCHandleCookieTable.cs
- SignatureDescription.cs
- HttpDictionary.cs
- DataTableTypeConverter.cs
- JpegBitmapEncoder.cs
- ExpressionPrefixAttribute.cs
- ObjectItemCachedAssemblyLoader.cs
- ImageCollectionCodeDomSerializer.cs
- PhysicalOps.cs
- SiteMapHierarchicalDataSourceView.cs
- CountAggregationOperator.cs
- ScriptingJsonSerializationSection.cs
- FilterQuery.cs
- BinaryEditor.cs