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
- Sql8ConformanceChecker.cs
- XmlSignificantWhitespace.cs
- PasswordPropertyTextAttribute.cs
- GcSettings.cs
- Vector3DAnimation.cs
- assertwrapper.cs
- AdapterDictionary.cs
- ZeroOpNode.cs
- CSharpCodeProvider.cs
- ValidationEventArgs.cs
- CodeGroup.cs
- AuthStoreRoleProvider.cs
- PageAdapter.cs
- TextEndOfSegment.cs
- StringInfo.cs
- DefaultEventAttribute.cs
- DirectionalLight.cs
- ExtractorMetadata.cs
- PrintEvent.cs
- DateTimeSerializationSection.cs
- ConfigurationManagerInternal.cs
- FontEmbeddingManager.cs
- SafePEFileHandle.cs
- CultureMapper.cs
- DtdParser.cs
- OpenFileDialog.cs
- Number.cs
- PocoPropertyAccessorStrategy.cs
- AccessDataSourceWizardForm.cs
- XmlCharType.cs
- ByteStreamGeometryContext.cs
- XmlSchemaComplexContentExtension.cs
- UpdateTranslator.cs
- Task.cs
- MetadataCollection.cs
- ArrayConverter.cs
- SqlGatherProducedAliases.cs
- Errors.cs
- SqlMethods.cs
- XNameConverter.cs
- BitmapFrameEncode.cs
- WebFormsRootDesigner.cs
- CounterCreationDataCollection.cs
- FacetValueContainer.cs
- XPathChildIterator.cs
- JsonFormatWriterGenerator.cs
- TabControlAutomationPeer.cs
- codemethodreferenceexpression.cs
- DiagnosticTraceSource.cs
- CacheHelper.cs
- OpenFileDialog.cs
- GeneralTransform2DTo3D.cs
- KeySpline.cs
- URI.cs
- GregorianCalendarHelper.cs
- FixedFlowMap.cs
- DelegateHelpers.Generated.cs
- RelatedCurrencyManager.cs
- MessageDecoder.cs
- TaskFileService.cs
- UseAttributeSetsAction.cs
- StateMachineWorkflow.cs
- DataStreamFromComStream.cs
- SqlUdtInfo.cs
- CombinedGeometry.cs
- CodePageUtils.cs
- DashStyle.cs
- BulletedListEventArgs.cs
- WSSecurityJan2004.cs
- _AutoWebProxyScriptHelper.cs
- DataIdProcessor.cs
- PersistStreamTypeWrapper.cs
- OrderedDictionary.cs
- Viewport2DVisual3D.cs
- SiteMapProvider.cs
- WebPartChrome.cs
- Base64WriteStateInfo.cs
- DbReferenceCollection.cs
- Adorner.cs
- ProbeDuplex11AsyncResult.cs
- ClearCollection.cs
- SortedList.cs
- CombinedHttpChannel.cs
- CharConverter.cs
- StylusTip.cs
- Int64AnimationUsingKeyFrames.cs
- CharConverter.cs
- Vector3DCollection.cs
- ValueConversionAttribute.cs
- XPathDescendantIterator.cs
- Column.cs
- JumpPath.cs
- InterleavedZipPartStream.cs
- RijndaelManaged.cs
- _PooledStream.cs
- SettingsPropertyWrongTypeException.cs
- InternalControlCollection.cs
- DetailsViewInsertedEventArgs.cs
- DataGridLengthConverter.cs
- MarginsConverter.cs