Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media3D / GeometryModel3D.cs / 1305600 / GeometryModel3D.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: 3D geometry primitive implementation. // // See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht // // History: // 06/10/2004 : [....] - Created from MeshPrimitive3D.cs (deprecated) // //--------------------------------------------------------------------------- using MS.Internal; using MS.Internal.Media3D; using System; using System.Collections; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Windows.Media; using System.Windows.Media.Composition; using System.Windows.Media.Media3D; using System.Windows.Markup; namespace System.Windows.Media.Media3D { ////// GeometryModel3D is for modeling with a Geometry3D and a Material. /// public sealed partial class GeometryModel3D : Model3D { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- ////// Builds a GeometryModel3D with empty Geometry3D and Material. /// public GeometryModel3D() {} ////// Constructor. /// /// Geometry of the new mesh primitive. /// Material of the new mesh primitive. public GeometryModel3D(Geometry3D geometry, Material material) { Geometry = geometry; Material = material; } //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- //------------------------------------------------------ // // Internal Methods // //------------------------------------------------------ #region Internal Methods internal override Rect3D CalculateSubgraphBoundsInnerSpace() { Geometry3D geometry = Geometry; if (geometry == null) { return Rect3D.Empty; } return geometry.Bounds; } internal override void RayHitTestCore(RayHitTestParameters rayParams) { Geometry3D geometry = Geometry; if (geometry != null) { // If our Geometry3D hit test intersects anything we should return "this" Model3D // as the HitTestResult.ModelHit. rayParams.CurrentModel = this; FaceType facesToHit = FaceType.None; if (Material != null) { facesToHit |= FaceType.Front; } if (BackMaterial != null) { facesToHit |= FaceType.Back; } if (facesToHit != FaceType.None) { geometry.RayHitTest(rayParams, facesToHit); } } } internal void MaterialPropertyChangedHook(DependencyPropertyChangedEventArgs e) { } internal void BackMaterialPropertyChangedHook(DependencyPropertyChangedEventArgs e) { MaterialPropertyChangedHook(e); } #endregion Internal Methods } } // 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
- input.cs
- FontFamily.cs
- WindowsSolidBrush.cs
- XPathQilFactory.cs
- QuaternionValueSerializer.cs
- TypeConverter.cs
- ToolStripMenuItemCodeDomSerializer.cs
- CombinedGeometry.cs
- COAUTHINFO.cs
- SlipBehavior.cs
- ItemCheckEvent.cs
- XmlSchemaDocumentation.cs
- ToolStripItemClickedEventArgs.cs
- DayRenderEvent.cs
- Parameter.cs
- UnsupportedPolicyOptionsException.cs
- MruCache.cs
- TransformPattern.cs
- ZoneButton.cs
- Table.cs
- ListViewDeletedEventArgs.cs
- FtpRequestCacheValidator.cs
- DataKeyArray.cs
- sqlstateclientmanager.cs
- Metadata.cs
- TextTreeNode.cs
- SynchronizedChannelCollection.cs
- HGlobalSafeHandle.cs
- ArcSegment.cs
- FixedSOMLineRanges.cs
- AdornerDecorator.cs
- DotExpr.cs
- SpecialNameAttribute.cs
- ObservableCollectionDefaultValueFactory.cs
- ThreadStaticAttribute.cs
- SoapMessage.cs
- PlatformNotSupportedException.cs
- StickyNoteHelper.cs
- Trace.cs
- NumberFormatter.cs
- CodePropertyReferenceExpression.cs
- SpotLight.cs
- EventEntry.cs
- TransformerConfigurationWizardBase.cs
- InputLanguageManager.cs
- AssemblyHash.cs
- HtmlFormAdapter.cs
- SortedList.cs
- DataSourceCacheDurationConverter.cs
- ProgressBar.cs
- InkCanvas.cs
- Form.cs
- Style.cs
- ColumnTypeConverter.cs
- HttpResponseHeader.cs
- TextPenaltyModule.cs
- ComboBox.cs
- MenuTracker.cs
- EditingCoordinator.cs
- ByteAnimationUsingKeyFrames.cs
- Themes.cs
- DataTrigger.cs
- RelationshipType.cs
- ReadOnlyDictionary.cs
- InvokeGenerator.cs
- ZipIOExtraFieldZip64Element.cs
- Pool.cs
- TableCellsCollectionEditor.cs
- ParentUndoUnit.cs
- CursorConverter.cs
- WindowsFont.cs
- XamlFxTrace.cs
- SchemaObjectWriter.cs
- SerializationException.cs
- NamespaceExpr.cs
- SecurityTokenResolver.cs
- DrawingGroupDrawingContext.cs
- pingexception.cs
- QilDataSource.cs
- PrimitiveDataContract.cs
- ListViewUpdateEventArgs.cs
- CommonDialog.cs
- AutomationAttributeInfo.cs
- ConfigsHelper.cs
- XPathAncestorIterator.cs
- AutoCompleteStringCollection.cs
- CellIdBoolean.cs
- DescendantOverDescendantQuery.cs
- Base64Encoder.cs
- ArgumentException.cs
- CodeEventReferenceExpression.cs
- TextCharacters.cs
- OdbcTransaction.cs
- BitmapEditor.cs
- ElementNotEnabledException.cs
- ServiceSettingsResponseInfo.cs
- CategoryGridEntry.cs
- RegexNode.cs
- PathSegment.cs
- DeferredRunTextReference.cs