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
- Pair.cs
- SafeViewOfFileHandle.cs
- SqlConnectionHelper.cs
- ManipulationVelocities.cs
- ISAPIRuntime.cs
- ArrayElementGridEntry.cs
- Brushes.cs
- SqlConnectionStringBuilder.cs
- TypeUtils.cs
- ResetableIterator.cs
- AbstractSvcMapFileLoader.cs
- ColorBuilder.cs
- ToolStripManager.cs
- EditorZone.cs
- RangeValueProviderWrapper.cs
- PeerNameRecord.cs
- HashSetEqualityComparer.cs
- ForwardPositionQuery.cs
- DataList.cs
- ProtocolElement.cs
- ReadOnlyTernaryTree.cs
- Utils.cs
- Mapping.cs
- DbSourceParameterCollection.cs
- SHA1Cng.cs
- AsnEncodedData.cs
- ReverseInheritProperty.cs
- StorageRoot.cs
- CheckBox.cs
- StatusBar.cs
- BamlRecordWriter.cs
- VectorAnimationBase.cs
- DataSourceIDConverter.cs
- ProgressPage.cs
- ThreadExceptionDialog.cs
- TableCell.cs
- Thickness.cs
- SchemaImporterExtensionElementCollection.cs
- ValidatorCollection.cs
- QilPatternVisitor.cs
- CrossContextChannel.cs
- AppSecurityManager.cs
- X509IssuerSerialKeyIdentifierClause.cs
- ScrollChrome.cs
- ValidationErrorInfo.cs
- Subtree.cs
- DBCSCodePageEncoding.cs
- ScrollBar.cs
- ImageAttributes.cs
- DetailsViewPagerRow.cs
- ValidationSummary.cs
- InlineCategoriesDocument.cs
- Attributes.cs
- Content.cs
- X509WindowsSecurityToken.cs
- CodeTypeReferenceExpression.cs
- WebPartDesigner.cs
- PropertyReference.cs
- BitmapEffectInput.cs
- __Error.cs
- ExtensionFile.cs
- ToolStripRendererSwitcher.cs
- StateWorkerRequest.cs
- TemplateXamlParser.cs
- Helper.cs
- ConfigPathUtility.cs
- PageVisual.cs
- IOException.cs
- XmlMembersMapping.cs
- SecurityHeaderTokenResolver.cs
- DataGridItem.cs
- SerializableAttribute.cs
- SignerInfo.cs
- CorePropertiesFilter.cs
- MarginCollapsingState.cs
- PersonalizationDictionary.cs
- PathSegment.cs
- ClientScriptManager.cs
- SimpleWebHandlerParser.cs
- RenderOptions.cs
- WebConfigurationHostFileChange.cs
- ReadOnlyCollection.cs
- ScriptResourceAttribute.cs
- UrlMapping.cs
- EntityDataSourceContainerNameItem.cs
- TextRangeBase.cs
- Tablet.cs
- DataGridViewCellValidatingEventArgs.cs
- ClientProxyGenerator.cs
- RtfNavigator.cs
- OperationInfoBase.cs
- DrawingGroupDrawingContext.cs
- SqlMethodAttribute.cs
- ViewGenerator.cs
- HttpAsyncResult.cs
- XsdDataContractExporter.cs
- PropertyGroupDescription.cs
- ContainerParagraph.cs
- QilInvoke.cs
- TaskCanceledException.cs