Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / System / Windows / Media / QuadraticBezierSegment.cs / 1 / QuadraticBezierSegment.cs
//------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2001 // // File: QuadraticBezierSegment.cs //----------------------------------------------------------------------------- using System; using MS.Internal; using MS.Internal.PresentationCore; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Reflection; using System.Collections; using System.Text; using System.Globalization; using System.Windows.Media; using System.Windows; using System.Text.RegularExpressions; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Diagnostics; using System.Security; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { ////// QuadraticBezierSegment /// public sealed partial class QuadraticBezierSegment : PathSegment { #region Constructors ////// /// public QuadraticBezierSegment() { } ////// /// public QuadraticBezierSegment(Point point1, Point point2, bool isStroked) { Point1 = point1; Point2 = point2; IsStroked = isStroked; } ////// /// internal QuadraticBezierSegment(Point point1, Point point2, bool isStroked, bool isSmoothJoin) { Point1 = point1; Point2 = point2; IsStroked = isStroked; IsSmoothJoin = isSmoothJoin; } #endregion #region AddToFigure internal override void AddToFigure( Matrix matrix, // The transformation matrid PathFigure figure, // The figure to add to ref Point current) // Out: Segment endpoint, not transformed { current = Point2; if (matrix.IsIdentity) { figure.Segments.Add(this); } else { Point pt1 = Point1; pt1 *= matrix; Point pt2 = current; pt2 *= matrix; figure.Segments.Add(new QuadraticBezierSegment(pt1, pt2, IsStroked, IsSmoothJoin)); } } #endregion #region Resource ////// SerializeData - Serialize the contents of this Segment to the provided context. /// internal override void SerializeData(StreamGeometryContext ctx) { ctx.QuadraticBezierTo(Point1, Point2, IsStroked, IsSmoothJoin); } #endregion internal override bool IsCurved() { return true; } ////// Creates a string representation of this object based on the format string /// and IFormatProvider passed in. /// If the provider is null, the CurrentCulture is used. /// See the documentation for IFormattable for more information. /// ////// A string representation of this object. /// internal override string ConvertToString(string format, IFormatProvider provider) { // Helper to get the numeric list separator for a given culture. char separator = MS.Internal.TokenizerHelper.GetNumericListSeparator(provider); return String.Format(provider, "Q{1:" + format + "}{0}{2:" + format + "}", separator, Point1, Point2); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2001 // // File: QuadraticBezierSegment.cs //----------------------------------------------------------------------------- using System; using MS.Internal; using MS.Internal.PresentationCore; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Reflection; using System.Collections; using System.Text; using System.Globalization; using System.Windows.Media; using System.Windows; using System.Text.RegularExpressions; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Diagnostics; using System.Security; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { ////// QuadraticBezierSegment /// public sealed partial class QuadraticBezierSegment : PathSegment { #region Constructors ////// /// public QuadraticBezierSegment() { } ////// /// public QuadraticBezierSegment(Point point1, Point point2, bool isStroked) { Point1 = point1; Point2 = point2; IsStroked = isStroked; } ////// /// internal QuadraticBezierSegment(Point point1, Point point2, bool isStroked, bool isSmoothJoin) { Point1 = point1; Point2 = point2; IsStroked = isStroked; IsSmoothJoin = isSmoothJoin; } #endregion #region AddToFigure internal override void AddToFigure( Matrix matrix, // The transformation matrid PathFigure figure, // The figure to add to ref Point current) // Out: Segment endpoint, not transformed { current = Point2; if (matrix.IsIdentity) { figure.Segments.Add(this); } else { Point pt1 = Point1; pt1 *= matrix; Point pt2 = current; pt2 *= matrix; figure.Segments.Add(new QuadraticBezierSegment(pt1, pt2, IsStroked, IsSmoothJoin)); } } #endregion #region Resource ////// SerializeData - Serialize the contents of this Segment to the provided context. /// internal override void SerializeData(StreamGeometryContext ctx) { ctx.QuadraticBezierTo(Point1, Point2, IsStroked, IsSmoothJoin); } #endregion internal override bool IsCurved() { return true; } ////// Creates a string representation of this object based on the format string /// and IFormatProvider passed in. /// If the provider is null, the CurrentCulture is used. /// See the documentation for IFormattable for more information. /// ////// A string representation of this object. /// internal override string ConvertToString(string format, IFormatProvider provider) { // Helper to get the numeric list separator for a given culture. char separator = MS.Internal.TokenizerHelper.GetNumericListSeparator(provider); return String.Format(provider, "Q{1:" + format + "}{0}{2:" + format + "}", separator, Point1, Point2); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
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
- HtmlMeta.cs
- ToolboxItemLoader.cs
- SetterBase.cs
- TableRowCollection.cs
- BrowserDefinitionCollection.cs
- TraceHwndHost.cs
- Claim.cs
- LinqDataSourceUpdateEventArgs.cs
- PageRequestManager.cs
- CustomWebEventKey.cs
- BidPrivateBase.cs
- TraceXPathNavigator.cs
- MouseGestureConverter.cs
- ToolboxItemFilterAttribute.cs
- TemplatedWizardStep.cs
- SoundPlayer.cs
- ToolTip.cs
- ProtocolState.cs
- FixedSOMLineCollection.cs
- EdmProperty.cs
- SoapFaultCodes.cs
- PathSegmentCollection.cs
- NotEqual.cs
- WebEventCodes.cs
- ResizeBehavior.cs
- DesignerMetadata.cs
- ColorAnimationBase.cs
- DbMetaDataCollectionNames.cs
- PointUtil.cs
- Screen.cs
- EventSetterHandlerConverter.cs
- PasswordBoxAutomationPeer.cs
- SoapIncludeAttribute.cs
- ActivityBuilder.cs
- RelationshipEndMember.cs
- RemotingClientProxy.cs
- RootCodeDomSerializer.cs
- EventMappingSettings.cs
- DataTable.cs
- Camera.cs
- CommandID.cs
- xamlnodes.cs
- Array.cs
- XmlSchemaSet.cs
- CngProvider.cs
- GraphicsPathIterator.cs
- IList.cs
- fixedPageContentExtractor.cs
- RegexCaptureCollection.cs
- XmlNode.cs
- KeyboardEventArgs.cs
- ParenthesizePropertyNameAttribute.cs
- BaseDataList.cs
- QuinticEase.cs
- RC2CryptoServiceProvider.cs
- ClientOptions.cs
- HostedTransportConfigurationManager.cs
- NativeObjectSecurity.cs
- ConstraintEnumerator.cs
- GridPattern.cs
- PenThreadWorker.cs
- AspNetRouteServiceHttpHandler.cs
- HostingEnvironmentException.cs
- PeerDuplexChannel.cs
- ContentDisposition.cs
- RectConverter.cs
- XamlBrushSerializer.cs
- ControlAdapter.cs
- ChildChangedEventArgs.cs
- DomainConstraint.cs
- WsdlInspector.cs
- VisualSerializer.cs
- HeaderElement.cs
- AsymmetricSecurityBindingElement.cs
- WindowsRichEdit.cs
- EntityDataSourceState.cs
- ObjectSecurityT.cs
- CompressEmulationStream.cs
- RandomNumberGenerator.cs
- X509Certificate2.cs
- CompoundFileStreamReference.cs
- UserMapPath.cs
- isolationinterop.cs
- NameValueCollection.cs
- MdiWindowListStrip.cs
- Hex.cs
- PropertyInfoSet.cs
- LinqExpressionNormalizer.cs
- FilterQueryOptionExpression.cs
- Pair.cs
- Int64.cs
- StreamReader.cs
- dbdatarecord.cs
- SQLChars.cs
- PersonalizationProviderHelper.cs
- Subtree.cs
- ListMarkerSourceInfo.cs
- HashStream.cs
- KeyConverter.cs
- HttpCookie.cs