public static Polyline DrawParallelArrow(Polyline Shape, Object Tag, Dataweb.NShape.WinFormsUI.Display Display, Dataweb.NShape.Project Project, ILineStyle LineStyle, Layer Layer) { Polyline parallel = (Polyline)Project.ShapeTypes["Polyline"].CreateInstance(); parallel.StartCapStyle = Project.Design.CapStyles.OpenArrow; parallel.LineStyle = LineStyle; parallel.Tag = Tag; parallel.SecurityDomainName = 'B'; Point p0 = Shape.GetControlPointPosition(ControlPointId.FirstVertex); Point p1 = Shape.GetControlPointPosition(ControlPointId.LastVertex); Point n0 = Shape.CalcNormalVector(p0); Point n1 = Shape.CalcNormalVector(p1); parallel.MoveControlPointTo(ControlPointId.FirstVertex, n0.X, n0.Y, ResizeModifiers.None); parallel.MoveControlPointTo(ControlPointId.LastVertex, n1.X, n1.Y, ResizeModifiers.None); Display.Diagram.Shapes.Add(parallel); Display.Diagram.AddShapeToLayers(parallel, Layer.Id); Project.Repository.Insert((Shape)parallel, Display.Diagram); return(parallel); }