public override void Draw(DrawingContext ctx, Matrix matrix) { foreach (IAdornerSet adornerSet in (IEnumerable <IAdornerSet>) this.AdornerSet.ToolContext.View.AdornerLayer.GetAdornerSets(this.Element)) { PathAdornerSet pathAdornerSet = adornerSet as PathAdornerSet; if (pathAdornerSet != null && pathAdornerSet.PathEditorTarget.PathEditMode == this.pathEditMode) { return; } } System.Windows.Media.Geometry renderedGeometry = (System.Windows.Media.Geometry)null; switch (this.pathEditMode) { case PathEditMode.ScenePath: if (this.Element.Visual != null && PlatformTypes.Shape.IsAssignableFrom((ITypeId)this.Element.Visual.GetIType((ITypeResolver)this.Element.ProjectContext))) { SceneElement element = this.Element; renderedGeometry = element.ProjectContext.IsCapabilitySet(PlatformCapability.IsWpf) ? (element.ViewObject.PlatformSpecificObject as Shape).RenderedGeometry : element.ViewModel.DefaultView.GetRenderedGeometryAsWpf(element); break; } break; case PathEditMode.MotionPath: MotionPathEditorTarget pathEditorTarget1 = new MotionPathEditorTarget((Base2DElement)this.Element); renderedGeometry = (System.Windows.Media.Geometry)pathEditorTarget1.PathGeometry; if (renderedGeometry == null || renderedGeometry.IsEmpty()) { return; } matrix = pathEditorTarget1.GetTransformToAncestor(this.Element.ViewTargetElement) * matrix; break; case PathEditMode.ClippingPath: using (ClippingPathEditorTarget pathEditorTarget2 = new ClippingPathEditorTarget((Base2DElement)this.Element)) { renderedGeometry = (System.Windows.Media.Geometry)pathEditorTarget2.PathGeometry; if (renderedGeometry == null || renderedGeometry.IsEmpty()) { return; } matrix = pathEditorTarget2.GetTransformToAncestor(this.Element.ViewTargetElement) * matrix; break; } } if (renderedGeometry == null || renderedGeometry.IsEmpty()) { return; } ctx.DrawGeometry((Brush)null, this.ThinPathPen, this.GetTransformedGeometry(this.DesignerContext.ActiveView, this.Element, renderedGeometry, matrix)); }
public PathPartAdorner(PathAdornerSet pathAdornerSet, int figureIndex, int partIndex, int segmentIndex, int segmentPointIndex) : base((AdornerSet)pathAdornerSet) { this.Initialize(figureIndex, partIndex, segmentIndex, segmentPointIndex); }
public PathTangentAdorner(PathAdornerSet pathAdornerSet, int figureIndex, int endPointIndex, int segmentIndex, int segmentPointIndex, PathPointAdorner pathPointAdorner, PathSegmentAdorner pathSegmentAdorner) : base(pathAdornerSet, figureIndex, endPointIndex, segmentIndex, segmentPointIndex) { this.Initialize(figureIndex, endPointIndex, segmentIndex, segmentPointIndex, pathPointAdorner, pathSegmentAdorner); }
public PathPointAdorner(PathAdornerSet pathAdornerSet, int figureIndex, int pointIndex, int segmentIndex, int segmentPointIndex) : base(pathAdornerSet, figureIndex, pointIndex, segmentIndex, segmentPointIndex) { PathFigureEditor pathFigureEditor = new PathFigureEditor(pathAdornerSet.PathGeometry.Figures[figureIndex]); }
public PathSegmentAdorner(PathAdornerSet pathAdornerSet, int figureIndex, int lastPointIndex, int segmentIndex, int segmentPointIndex) : base(pathAdornerSet, figureIndex, lastPointIndex, segmentIndex, segmentPointIndex) { }