Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media3D / Model3DGroup.cs / 1305600 / Model3DGroup.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: 3D model collection. // // See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht // // History: // 06/28/2003 : t-gregr - Created // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Diagnostics; using System.Windows; using System.Windows.Media; using System.Windows.Media.Media3D; using System.Windows.Markup; using MS.Internal; using MS.Internal.Media3D; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media.Media3D { ////// 3D model group. /// [ContentProperty("Children")] public sealed partial class Model3DGroup : Model3D { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// Default constructor. /// public Model3DGroup() {} #endregion Constructors //------------------------------------------------------ // // Internal Methods // //----------------------------------------------------- #region Internal Methods internal override void RayHitTestCore( RayHitTestParameters rayParams) { Model3DCollection children = Children; if (children == null) { return; } for (int i = children.Count - 1; i >= 0; i--) { Model3D child = children.Internal_GetItem(i); // Perform the hit-test against the child. child.RayHitTest(rayParams); } } internal override Rect3D CalculateSubgraphBoundsInnerSpace() { Model3DCollection children = Children; if (children == null) { return Rect3D.Empty; } Rect3D bounds = Rect3D.Empty; for (int i = 0, count = children.Count; i < count; i++) { Model3D child = children.Internal_GetItem(i); // Calls CSBOS rather than Bounds to avoid ReadPreamble. bounds.Union(child.CalculateSubgraphBoundsOuterSpace()); } return bounds; } #endregion Internal Methods //------------------------------------------------------ // // Internal Properties // //------------------------------------------------------ #region Internal Properties // named EmptyGroup not to collide with public Model3D.Empty internal static Model3DGroup EmptyGroup { get { if (s_empty == null) { s_empty = new Model3DGroup(); s_empty.Freeze(); } return s_empty; } } #endregion Internal Properties //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private static Model3DGroup s_empty; #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
- Effect.cs
- WebBrowserNavigatingEventHandler.cs
- ListSortDescriptionCollection.cs
- DataTemplateKey.cs
- GridViewSortEventArgs.cs
- LoginName.cs
- VisualTreeHelper.cs
- XmlSchemas.cs
- PerspectiveCamera.cs
- ItemContainerGenerator.cs
- _UriTypeConverter.cs
- ScrollContentPresenter.cs
- WebSysDefaultValueAttribute.cs
- SpecularMaterial.cs
- SecurityTokenInclusionMode.cs
- XmlCDATASection.cs
- DataSourceExpression.cs
- TextFindEngine.cs
- PropertyEmitter.cs
- Panel.cs
- Tokenizer.cs
- GifBitmapEncoder.cs
- SQLDouble.cs
- DynamicValueConverter.cs
- ControlCachePolicy.cs
- BooleanStorage.cs
- FontCacheUtil.cs
- DataBindingExpressionBuilder.cs
- RegexParser.cs
- ConfigXmlElement.cs
- FixedPageProcessor.cs
- DataControlFieldHeaderCell.cs
- dataobject.cs
- KeyedPriorityQueue.cs
- DataGridItem.cs
- Helper.cs
- Queue.cs
- WindowVisualStateTracker.cs
- MimeXmlImporter.cs
- PageCanvasSize.cs
- CacheDict.cs
- SqlRemoveConstantOrderBy.cs
- CodeExpressionCollection.cs
- DbParameterCollectionHelper.cs
- DetailsViewInsertedEventArgs.cs
- GridViewRowCollection.cs
- ContentPathSegment.cs
- XmlElementCollection.cs
- NonceCache.cs
- ProfileService.cs
- QilList.cs
- TraceUtils.cs
- SoapTypeAttribute.cs
- LogicalExpr.cs
- ExpressionBindings.cs
- DataGridViewCellEventArgs.cs
- ResolveNameEventArgs.cs
- _SslSessionsCache.cs
- Parsers.cs
- RuleSetDialog.cs
- TransformerTypeCollection.cs
- TextServicesDisplayAttribute.cs
- InertiaTranslationBehavior.cs
- SQLBytes.cs
- UIEndRequest.cs
- TableLayoutStyleCollection.cs
- ServiceModelActivity.cs
- CounterCreationData.cs
- Rect.cs
- XmlSchemaExporter.cs
- SettingsProviderCollection.cs
- WindowsIdentity.cs
- dtdvalidator.cs
- WebControlToolBoxItem.cs
- Stylesheet.cs
- HttpWebRequestElement.cs
- ToolboxComponentsCreatingEventArgs.cs
- Timeline.cs
- LineGeometry.cs
- Merger.cs
- CompilationLock.cs
- CommonRemoteMemoryBlock.cs
- SchemaMapping.cs
- ScriptingSectionGroup.cs
- UnionCodeGroup.cs
- HtmlValidationSummaryAdapter.cs
- BodyWriter.cs
- InputScopeAttribute.cs
- XmlSchemaChoice.cs
- XmlBoundElement.cs
- DataRowComparer.cs
- MetadataProperty.cs
- FaultFormatter.cs
- QueryPageSettingsEventArgs.cs
- X509ThumbprintKeyIdentifierClause.cs
- EntityTypeEmitter.cs
- VoiceChangeEventArgs.cs
- followingquery.cs
- PageStatePersister.cs
- SymbolType.cs