Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / 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. // // // 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.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- C14NUtil.cs
- DiffuseMaterial.cs
- DataViewSetting.cs
- WebPartRestoreVerb.cs
- BufferModeSettings.cs
- SqlCommand.cs
- ConstrainedDataObject.cs
- DBConcurrencyException.cs
- CaseCqlBlock.cs
- Error.cs
- NameValueCollection.cs
- ExponentialEase.cs
- BaseParser.cs
- ChangeTracker.cs
- XsltCompileContext.cs
- BinaryFormatter.cs
- PublisherIdentityPermission.cs
- ToolStripProgressBar.cs
- ResourceProperty.cs
- X509Utils.cs
- EventEntry.cs
- SspiSafeHandles.cs
- InvalidChannelBindingException.cs
- ItemsPanelTemplate.cs
- ComplexLine.cs
- DynamicDataManager.cs
- Win32Native.cs
- MetadataUtil.cs
- XmlNamespaceDeclarationsAttribute.cs
- Label.cs
- ErrorStyle.cs
- EventLogEntry.cs
- DataServiceCollectionOfT.cs
- XmlDocumentViewSchema.cs
- StorageScalarPropertyMapping.cs
- XsltArgumentList.cs
- NetworkCredential.cs
- Latin1Encoding.cs
- TrackingLocation.cs
- _TransmitFileOverlappedAsyncResult.cs
- NativeObjectSecurity.cs
- InvalidFilterCriteriaException.cs
- CachedFontFace.cs
- TextSelectionHighlightLayer.cs
- WebPartsPersonalization.cs
- WpfWebRequestHelper.cs
- BaseUriHelper.cs
- DataSetViewSchema.cs
- HtmlControl.cs
- XmlSchemaInclude.cs
- AddingNewEventArgs.cs
- XComponentModel.cs
- PointCollectionConverter.cs
- XPathChildIterator.cs
- DependencyProperty.cs
- RuntimeDelegateArgument.cs
- NativeRecognizer.cs
- DataServicePagingProviderWrapper.cs
- GridViewDeletedEventArgs.cs
- Mapping.cs
- UnaryNode.cs
- RemotingService.cs
- Stopwatch.cs
- OletxCommittableTransaction.cs
- WebConfigurationManager.cs
- XsltConvert.cs
- CodeStatement.cs
- odbcmetadatafactory.cs
- ObjectQueryState.cs
- Variant.cs
- RecordManager.cs
- WebPartActionVerb.cs
- Int32RectConverter.cs
- ButtonFlatAdapter.cs
- HtmlInputImage.cs
- ContentValidator.cs
- CodeSnippetTypeMember.cs
- DbInsertCommandTree.cs
- Dictionary.cs
- GridViewUpdateEventArgs.cs
- assemblycache.cs
- CodePageUtils.cs
- DependencyPropertyDescriptor.cs
- PointKeyFrameCollection.cs
- Duration.cs
- XmlDownloadManager.cs
- AppDomainManager.cs
- ToolTipService.cs
- ShaderRenderModeValidation.cs
- _BasicClient.cs
- TextDpi.cs
- DataSvcMapFile.cs
- RealizationContext.cs
- TableLayoutSettings.cs
- GridViewSelectEventArgs.cs
- CfgArc.cs
- RestHandler.cs
- DependentList.cs
- OleDbCommandBuilder.cs
- GcSettings.cs