Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media3D / Matrix3DStack.cs / 1305600 / 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); } //------------------------------------------------------ // // 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RoutingChannelExtension.cs
- Geometry3D.cs
- PointCollection.cs
- SiteMap.cs
- ContainerControl.cs
- UseLicense.cs
- _BasicClient.cs
- ListenDesigner.cs
- AdapterDictionary.cs
- MostlySingletonList.cs
- DataGridViewControlCollection.cs
- DataColumnMapping.cs
- InstalledFontCollection.cs
- TextFormatterContext.cs
- InstanceContextManager.cs
- PageTheme.cs
- EditorAttribute.cs
- IEnumerable.cs
- Panel.cs
- TextContainerHelper.cs
- MouseButtonEventArgs.cs
- DoubleStorage.cs
- ContextStack.cs
- XmlAttributeCollection.cs
- COM2Enum.cs
- Rfc2898DeriveBytes.cs
- Cursor.cs
- ExtractorMetadata.cs
- ServiceOperationUIEditor.cs
- CodeDomConfigurationHandler.cs
- TextParagraphProperties.cs
- ParserOptions.cs
- ThicknessConverter.cs
- OuterGlowBitmapEffect.cs
- adornercollection.cs
- CLRBindingWorker.cs
- NaturalLanguageHyphenator.cs
- CategoryGridEntry.cs
- TdsParser.cs
- SqlRemoveConstantOrderBy.cs
- RangeValidator.cs
- GeometryHitTestParameters.cs
- SiteMapDataSource.cs
- TransactionProxy.cs
- DispatchWrapper.cs
- ConvertersCollection.cs
- FrameworkElementFactory.cs
- PositiveTimeSpanValidatorAttribute.cs
- DefaultPrintController.cs
- RequestCacheEntry.cs
- EmbossBitmapEffect.cs
- DbDataSourceEnumerator.cs
- LiteralDesigner.cs
- XmlDocumentType.cs
- OleDbPropertySetGuid.cs
- XmlMapping.cs
- ParameterCollectionEditorForm.cs
- DivideByZeroException.cs
- ColorKeyFrameCollection.cs
- TextSpan.cs
- XamlInt32CollectionSerializer.cs
- TransformerTypeCollection.cs
- ImmutableCommunicationTimeouts.cs
- GridViewSelectEventArgs.cs
- Transform3DGroup.cs
- MemberRestriction.cs
- ListViewGroup.cs
- AmbientProperties.cs
- GAC.cs
- ConnectionPointCookie.cs
- SmtpMail.cs
- Rijndael.cs
- TagMapInfo.cs
- SqlMethodAttribute.cs
- RightsManagementEncryptionTransform.cs
- FormViewModeEventArgs.cs
- AdjustableArrowCap.cs
- SafeFileMappingHandle.cs
- ListParaClient.cs
- GlyphRun.cs
- BufferedReceiveElement.cs
- DependencyPropertyKind.cs
- EndpointDispatcherTable.cs
- HtmlControlDesigner.cs
- Column.cs
- TdsParser.cs
- DiscoveryClientChannelBase.cs
- TraceFilter.cs
- IndexerHelper.cs
- CopyNodeSetAction.cs
- SoapCommonClasses.cs
- ApplyImportsAction.cs
- UInt32Storage.cs
- WebBrowserHelper.cs
- DES.cs
- ViewStateException.cs
- DataServiceRequestException.cs
- SyndicationCategory.cs
- TextCompositionManager.cs
- DriveInfo.cs