Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Media3D / Ray3DHitTestResult.cs / 1 / Ray3DHitTestResult.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // History: // 06/22/2005 : [....] - Integrated from RayHitTestResult. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; namespace System.Windows.Media.Media3D { ////// The HitTestResult of a Visual3D.HitTest(...) where the parameter /// was a RayHitTestParameter. /// /// NOTE: This might have originated as a PointHitTest on a 2D Visual /// which was extended into 3D. /// public abstract class RayHitTestResult : HitTestResult { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors // Prevent 3rd parties from extending this abstract base class. internal RayHitTestResult(Visual3D visualHit, Model3D modelHit) : base (visualHit) { _modelHit = modelHit; } #endregion Constructors //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- ////// Re-expose Visual property strongly typed to Visual3D. /// public new Visual3D VisualHit { get { return (Visual3D) base.VisualHit; } } ////// The Model3D intersected by the ray. /// public Model3D ModelHit { get { return _modelHit; } } ////// This is a point in 3-space at which the ray intersected /// the geometry of the hit Model3D. This point is in the /// local coordinate system of the Model3D. /// public abstract Point3D PointHit { get; } ////// This is the distance between the ray's origin and the /// point hit. /// public abstract double DistanceToRayOrigin { get; } //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ //----------------------------------------------------- // // Public Events // //------------------------------------------------------ //----------------------------------------------------- // // Internal Methods // //----------------------------------------------------- internal abstract void SetDistanceToRayOrigin(double distance); internal static int CompareByDistanceToRayOrigin(RayHitTestResult x, RayHitTestResult y) { return Math.Sign(x.DistanceToRayOrigin - y.DistanceToRayOrigin); } //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private readonly Model3D _modelHit; #endregion Private Fields } } // 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. // // // // History: // 06/22/2005 : [....] - Integrated from RayHitTestResult. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; namespace System.Windows.Media.Media3D { ////// The HitTestResult of a Visual3D.HitTest(...) where the parameter /// was a RayHitTestParameter. /// /// NOTE: This might have originated as a PointHitTest on a 2D Visual /// which was extended into 3D. /// public abstract class RayHitTestResult : HitTestResult { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors // Prevent 3rd parties from extending this abstract base class. internal RayHitTestResult(Visual3D visualHit, Model3D modelHit) : base (visualHit) { _modelHit = modelHit; } #endregion Constructors //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- ////// Re-expose Visual property strongly typed to Visual3D. /// public new Visual3D VisualHit { get { return (Visual3D) base.VisualHit; } } ////// The Model3D intersected by the ray. /// public Model3D ModelHit { get { return _modelHit; } } ////// This is a point in 3-space at which the ray intersected /// the geometry of the hit Model3D. This point is in the /// local coordinate system of the Model3D. /// public abstract Point3D PointHit { get; } ////// This is the distance between the ray's origin and the /// point hit. /// public abstract double DistanceToRayOrigin { get; } //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ //----------------------------------------------------- // // Public Events // //------------------------------------------------------ //----------------------------------------------------- // // Internal Methods // //----------------------------------------------------- internal abstract void SetDistanceToRayOrigin(double distance); internal static int CompareByDistanceToRayOrigin(RayHitTestResult x, RayHitTestResult y) { return Math.Sign(x.DistanceToRayOrigin - y.DistanceToRayOrigin); } //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private readonly Model3D _modelHit; #endregion Private Fields } } // 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
- AccessKeyManager.cs
- TranslateTransform.cs
- PolyLineSegment.cs
- _LocalDataStore.cs
- DesignerAdRotatorAdapter.cs
- NotifyInputEventArgs.cs
- GridViewAutomationPeer.cs
- SerializationObjectManager.cs
- RoleBoolean.cs
- PathNode.cs
- MimePart.cs
- BrowserCapabilitiesCompiler.cs
- GlobalizationSection.cs
- GeometryValueSerializer.cs
- ImageMap.cs
- ClientRuntimeConfig.cs
- ToolStripProgressBar.cs
- ClientProxyGenerator.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- FixedPosition.cs
- ScriptServiceAttribute.cs
- KoreanLunisolarCalendar.cs
- RadioButtonAutomationPeer.cs
- EnumerableValidator.cs
- FontWeights.cs
- CustomErrorCollection.cs
- Hyperlink.cs
- SerTrace.cs
- ToolStripMenuItem.cs
- XslTransform.cs
- SqlUserDefinedAggregateAttribute.cs
- GetWinFXPath.cs
- SchemaImporterExtension.cs
- Timer.cs
- BindUriHelper.cs
- HwndSourceParameters.cs
- XamlToRtfWriter.cs
- odbcmetadatacollectionnames.cs
- XamlPathDataSerializer.cs
- SoapServerMessage.cs
- Behavior.cs
- SafeProcessHandle.cs
- PrimaryKeyTypeConverter.cs
- XmlReaderSettings.cs
- ContainsSearchOperator.cs
- _TimerThread.cs
- namescope.cs
- Point4D.cs
- Vector3D.cs
- AccessKeyManager.cs
- RijndaelManagedTransform.cs
- DateBoldEvent.cs
- HwndHost.cs
- SymbolEqualComparer.cs
- DataGridCaption.cs
- TablePatternIdentifiers.cs
- BufferedWebEventProvider.cs
- PropertyReference.cs
- MenuItemStyle.cs
- LinqDataSourceStatusEventArgs.cs
- CompiledQuery.cs
- ThreadStaticAttribute.cs
- ToolboxItemSnapLineBehavior.cs
- OleDbEnumerator.cs
- ParserOptions.cs
- FormsAuthenticationUserCollection.cs
- HashFinalRequest.cs
- SecurityHelper.cs
- TraceHandler.cs
- RelatedPropertyManager.cs
- ParameterCollection.cs
- MessageSecurityOverHttpElement.cs
- Parser.cs
- x509utils.cs
- SHA384.cs
- ISAPIRuntime.cs
- IsolatedStorageFile.cs
- Accessible.cs
- UIAgentRequest.cs
- NeedSkipTokenVisitor.cs
- CompiledRegexRunnerFactory.cs
- OdbcRowUpdatingEvent.cs
- TableColumnCollectionInternal.cs
- basevalidator.cs
- WpfMemberInvoker.cs
- EntityDataSourceDataSelectionPanel.cs
- ComponentGlyph.cs
- MarshalByRefObject.cs
- ProgressiveCrcCalculatingStream.cs
- CustomError.cs
- JournalNavigationScope.cs
- TextCompositionEventArgs.cs
- DbConnectionPoolIdentity.cs
- ViewEvent.cs
- DuplexChannelBinder.cs
- coordinatorfactory.cs
- InfoCardArgumentException.cs
- UserControl.cs
- TransactionsSectionGroup.cs
- IsolatedStorageFile.cs