Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Media3D / Matrix3DStack.cs / 1 / Matrix3DStack.cs
//---------------------------------------------------------------------------- // //// Copyright (c) Microsoft Corporation. All rights reserved. // // // Description: This is a super simple Matrix3DStack implementation. // MatrixStack (2D) is optimized to avoid boxig and copying // of structs. This was written as a stop-gap to address // a bug until we can use CodeGen here. // // History: // 1/19/2004 : [....] - Created // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; namespace System.Windows.Media.Media3D { // internal class Matrix3DStack { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- public void Clear() { _stack.Clear(); } public Matrix3D Pop() { Matrix3D top = Top; _stack.RemoveAt(_stack.Count - 1); return top; } ////// Empty => [matrix] /// tail | [top] => tail | [top] | [matrix * top] /// public void Push(Matrix3D matrix) { if (_stack.Count > 0) { matrix.Append(Top); } _stack.Add(matrix); } ////// stack = stack | [matrix] /// public void PushWithoutAccumulating(Matrix3D matrix) { _stack.Add(matrix); } //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ public int Count { get { return _stack.Count; } } public bool IsEmpty { get { return (_stack.Count == 0); } } public Matrix3D Top { get { return _stack[_stack.Count - 1]; } } //----------------------------------------------------- // // Public Events // //------------------------------------------------------ //----------------------------------------------------- // // Private Fields // //----------------------------------------------------- #region Private Fields private readonly List_stack = new List (); #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
- XslAst.cs
- TextEffect.cs
- XmlMemberMapping.cs
- Context.cs
- CompilerTypeWithParams.cs
- PathGradientBrush.cs
- ViewGenerator.cs
- ContextQuery.cs
- QilNode.cs
- XPathConvert.cs
- SetState.cs
- GridItemProviderWrapper.cs
- _SslStream.cs
- ValueType.cs
- ErrorHandler.cs
- MissingFieldException.cs
- SystemIPGlobalStatistics.cs
- SqlInternalConnectionTds.cs
- DataTableClearEvent.cs
- SendKeys.cs
- SchemaReference.cs
- LinearGradientBrush.cs
- RemoteCryptoSignHashRequest.cs
- DesignerToolStripControlHost.cs
- WindowsScrollBarBits.cs
- unitconverter.cs
- ExceptionUtil.cs
- RemoteCryptoTokenProvider.cs
- PartialCachingControl.cs
- BitmapSizeOptions.cs
- ParserExtension.cs
- TcpSocketManager.cs
- AsyncOperation.cs
- PermissionSetEnumerator.cs
- SiteMapNodeItem.cs
- DbInsertCommandTree.cs
- StatusBar.cs
- FloaterParaClient.cs
- MenuItemCollection.cs
- Stack.cs
- _ListenerResponseStream.cs
- DataGridTable.cs
- HighContrastHelper.cs
- ReadOnlyHierarchicalDataSource.cs
- CustomLineCap.cs
- RegexWriter.cs
- MatrixCamera.cs
- MergeLocalizationDirectives.cs
- AutomationElementCollection.cs
- FixedHyperLink.cs
- _NestedMultipleAsyncResult.cs
- ResourceProviderFactory.cs
- SizeConverter.cs
- CryptoProvider.cs
- ApplicationHost.cs
- DataSourceControlBuilder.cs
- InputMethod.cs
- documentsequencetextcontainer.cs
- ConfigurationException.cs
- NameValueConfigurationCollection.cs
- TreeViewItemAutomationPeer.cs
- State.cs
- prefixendpointaddressmessagefiltertable.cs
- RotationValidation.cs
- RegionIterator.cs
- XmlIlTypeHelper.cs
- SrgsRuleRef.cs
- EntityModelBuildProvider.cs
- TimeSpanConverter.cs
- XPathNavigatorReader.cs
- PolyBezierSegment.cs
- SQLInt32.cs
- SystemGatewayIPAddressInformation.cs
- SoapCommonClasses.cs
- SqlServer2KCompatibilityCheck.cs
- HttpHeaderCollection.cs
- Keyboard.cs
- DefaultTextStoreTextComposition.cs
- NonSerializedAttribute.cs
- XmlQueryType.cs
- EncoderBestFitFallback.cs
- ExtendedProtectionPolicy.cs
- BindingOperations.cs
- FreezableDefaultValueFactory.cs
- ConnectionManagementElementCollection.cs
- WebPartConnectionsDisconnectVerb.cs
- Stack.cs
- CompiledQueryCacheKey.cs
- CookielessHelper.cs
- Brush.cs
- PartialCachingControl.cs
- RenamedEventArgs.cs
- Selection.cs
- DataProviderNameConverter.cs
- input.cs
- TrackingValidationObjectDictionary.cs
- IconConverter.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- ImageListStreamer.cs
- MenuBindingsEditorForm.cs