Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / MS / Internal / Ink / ContourSegment.cs / 1 / ContourSegment.cs
//------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Media; namespace MS.Internal.Ink { ////// A helper structure representing an edge of a contour, where /// the edge is either a straight segment or an arc of a circle. /// ContourSegment are alwais directed clockwise (i.e with the contour /// inner area being on the right side. /// Used in hit-testing a contour vs another contour. /// internal struct ContourSegment { ////// Constructor for linear segments /// /// segment's begin point /// segment's end point internal ContourSegment(Point begin, Point end) { _begin = begin; _vector = DoubleUtil.AreClose(begin, end) ? new Vector(0, 0) : (end - begin); _radius = new Vector(0, 0); } ////// Constructor for arcs /// /// arc's begin point /// arc's end point /// arc's center internal ContourSegment(Point begin, Point end, Point center) { _begin = begin; _vector = end - begin; _radius = center - begin; } ///Tells whether the segment is arc or straight internal bool IsArc { get { return (_radius.X != 0) || (_radius.Y != 0); } } ///Returns the begin point of the segment internal Point Begin { get { return _begin; } } ///Returns the end point of the segment internal Point End { get { return _begin + _vector; } } ///Returns the vector from Begin to End internal Vector Vector { get { return _vector; } } ///Returns the vector from Begin to the center of the circle /// (zero vector for linear segments internal Vector Radius { get { return _radius; } } #region Fields private Point _begin; private Vector _vector; private Vector _radius; #endregion } } // 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
- RoleGroupCollection.cs
- DragDropManager.cs
- CurrentChangingEventArgs.cs
- __ConsoleStream.cs
- SignerInfo.cs
- ProgressBar.cs
- GridSplitter.cs
- FullTextState.cs
- ClientSettings.cs
- ScrollEvent.cs
- FilteredSchemaElementLookUpTable.cs
- DockEditor.cs
- OleDbWrapper.cs
- SmiEventSink.cs
- CuspData.cs
- EntityDataSource.cs
- NavigationCommands.cs
- Helper.cs
- IPipelineRuntime.cs
- ActivityExecutor.cs
- BaseTypeViewSchema.cs
- DataBinder.cs
- RelativeSource.cs
- RuleSettings.cs
- CreateRefExpr.cs
- datacache.cs
- PkcsMisc.cs
- DataConnectionHelper.cs
- SmtpException.cs
- SqlBooleanizer.cs
- DocumentApplicationDocumentViewer.cs
- PrinterUnitConvert.cs
- InteropBitmapSource.cs
- ColorContext.cs
- Parser.cs
- _ListenerAsyncResult.cs
- ExceptionNotification.cs
- NGCSerializationManager.cs
- PresentationSource.cs
- CompiledQueryCacheKey.cs
- AccessibilityHelperForVista.cs
- CSharpCodeProvider.cs
- EmbeddedMailObject.cs
- ScriptResourceHandler.cs
- TextEffect.cs
- Utils.cs
- DataGridViewAdvancedBorderStyle.cs
- DefaultEventAttribute.cs
- AspCompat.cs
- SystemWebCachingSectionGroup.cs
- RequestCachePolicyConverter.cs
- DataPointer.cs
- AdjustableArrowCap.cs
- EntityViewContainer.cs
- BadImageFormatException.cs
- ListItemsCollectionEditor.cs
- XslTransform.cs
- SslStreamSecurityBindingElement.cs
- PageCatalogPartDesigner.cs
- sqlstateclientmanager.cs
- DataGridViewCellFormattingEventArgs.cs
- StaticTextPointer.cs
- UpdatableWrapper.cs
- UnsafeNativeMethods.cs
- DoubleLink.cs
- mansign.cs
- StorageEntitySetMapping.cs
- AnnotationObservableCollection.cs
- ListManagerBindingsCollection.cs
- CodeDomSerializerException.cs
- SystemPens.cs
- ListenerAdapterBase.cs
- counter.cs
- CodeBlockBuilder.cs
- XmlObjectSerializerReadContext.cs
- OneWayBindingElementImporter.cs
- SqlParameterCollection.cs
- FaultDesigner.cs
- ComponentResourceKey.cs
- TraceUtility.cs
- WmpBitmapDecoder.cs
- ContentPresenter.cs
- ReflectionPermission.cs
- AmbientProperties.cs
- UInt16.cs
- WindowsGraphics2.cs
- XmlDataCollection.cs
- CodeDomConfigurationHandler.cs
- Win32.cs
- ConditionCollection.cs
- Int32Converter.cs
- XsdDataContractExporter.cs
- EventMetadata.cs
- AxHost.cs
- mansign.cs
- EntityConnection.cs
- MessagePropertyVariants.cs
- HMACSHA256.cs
- SqlExpander.cs
- ICspAsymmetricAlgorithm.cs