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
- PropertyPushdownHelper.cs
- XmlSchemaAttributeGroupRef.cs
- SchemaNames.cs
- ProfileSettingsCollection.cs
- BindingNavigator.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- CanExecuteRoutedEventArgs.cs
- DataGridLengthConverter.cs
- DesignBindingValueUIHandler.cs
- ThousandthOfEmRealPoints.cs
- input.cs
- FormViewModeEventArgs.cs
- LinkUtilities.cs
- XmlSchemaExternal.cs
- TextEffectCollection.cs
- PrtCap_Public_Simple.cs
- OptimisticConcurrencyException.cs
- DecoderFallback.cs
- EntityDataSourceUtil.cs
- CircleEase.cs
- CodePrimitiveExpression.cs
- HttpCacheVaryByContentEncodings.cs
- CodeEntryPointMethod.cs
- QueueNameHelper.cs
- DataObjectMethodAttribute.cs
- ReadWriteSpinLock.cs
- PenLineCapValidation.cs
- ServicePoint.cs
- DataBoundControlHelper.cs
- WmlSelectionListAdapter.cs
- Gdiplus.cs
- CompModSwitches.cs
- LazyTextWriterCreator.cs
- DeviceSpecificChoiceCollection.cs
- HtmlTernaryTree.cs
- ColorEditor.cs
- DataGridViewLinkCell.cs
- FileInfo.cs
- IntegerValidatorAttribute.cs
- PngBitmapEncoder.cs
- ObjectStorage.cs
- IEnumerable.cs
- IntMinMaxAggregationOperator.cs
- BeginStoryboard.cs
- ReferentialConstraint.cs
- SeparatorAutomationPeer.cs
- HttpPostedFile.cs
- PointAnimationBase.cs
- PrinterSettings.cs
- EmptyElement.cs
- safesecurityhelperavalon.cs
- updatecommandorderer.cs
- ElementProxy.cs
- SecurityRuntime.cs
- Parser.cs
- PropertyFilterAttribute.cs
- DbParameterCollectionHelper.cs
- CustomAttributeSerializer.cs
- SqlGenericUtil.cs
- RegexGroupCollection.cs
- SessionParameter.cs
- OperationInfo.cs
- TryCatchDesigner.xaml.cs
- EventNotify.cs
- VariantWrapper.cs
- SchemaNotation.cs
- TraceListener.cs
- AuthorizationPolicyTypeElementCollection.cs
- MappingMetadataHelper.cs
- RelatedCurrencyManager.cs
- SafeNativeMethods.cs
- TransformerTypeCollection.cs
- UnsafeNativeMethodsTablet.cs
- XmlSchemaObject.cs
- SystemColors.cs
- CompositeDataBoundControl.cs
- TabControlEvent.cs
- PointF.cs
- MobileUserControl.cs
- BreakRecordTable.cs
- SystemParameters.cs
- CookieProtection.cs
- MethodToken.cs
- WriteFileContext.cs
- XPathNodePointer.cs
- DocumentOrderQuery.cs
- MediaTimeline.cs
- CacheChildrenQuery.cs
- XmlDataImplementation.cs
- ProjectionCamera.cs
- PKCS1MaskGenerationMethod.cs
- SortedSet.cs
- Vector3DAnimationUsingKeyFrames.cs
- PointAnimationBase.cs
- AnnotationResourceCollection.cs
- ProxyFragment.cs
- TransportConfigurationTypeElement.cs
- CryptoConfig.cs
- ToolStripTextBox.cs
- AssemblyAttributesGoHere.cs