public void SetUpTestCase() { Contour currentContour = new Contour(Contours.Count + 1); Contours.Add(currentContour); Point pt1 = new Point(0, 0); pt1.T = 0; currentContour.Add(pt1); Point pt2 = new Point(100, 0); pt2.T = 100; currentContour.Add(pt2); Point pt3 = new Point(0, 100); pt3.T = 0; currentContour.Add(pt3); //Point pt4 = new Point(0, 100); //pt4.T = 0; //currentContour.Add(pt4); //Point pt5 = new Point(0, 40); //pt5.T = 1; //currentContour.Add(pt5); currentContour.Add(pt1); }
public override void OnPrimaryMouseClicked(Event e) { if (IsHover) { if (Contour.Add(Hover)) { foreach (var part in Contour.RawParts) { if (part.Line is MarkupRegularLine line && !Markup.ContainsLine(line.PointPair)) { var newLine = Markup.AddRegularLine(part.Line.PointPair, null, line.Alignment); Panel.AddLine(newLine); } } var style = Tool.GetStyleByModifier <FillerStyle, FillerStyle.FillerType>(FillerStyle.FillerType.Stripe); var filler = new MarkupFiller(Contour, style); Markup.AddFiller(filler); Panel.EditFiller(filler); Tool.SetDefaultMode(); return; } DisableByAlt = false; GetFillerPoints(); } }
public IEnumerable <IFigure> GetData() { IModel new_model = new Model(); IEnumerable <IFigure> figures = model.GetData(); int i = 0; foreach (IFigure figure in figures) { IFigure new_figure = new Figure(); foreach (IContour contour in figure.GetContours()) { IContour new_contour = new Contour(); foreach (ISegment segment in contour.GetSegments()) { if (!removed[i]) { new_contour.Add(segment); } i++; } new_figure.Add(new_contour); } new_model.Add(new_figure); } return(new_model.GetData()); }
public override void OnPrimaryMouseClicked(Event e) { if (IsHover) { if (Contour.Add(Hover)) { var filler = new MarkupFiller(Contour, NodeMarkupTool.GetStyle(FillerStyle.FillerType.Stripe)); Tool.Markup.AddFiller(filler); Panel.EditFiller(filler); Tool.SetDefaultMode(); return; } DisableByAlt = false; GetFillerPoints(); } }
public List <IContour> GetContours() { IFigure figures = new Figure(); List <IContour> contours = solverdata.GetContours(); int i = 0; foreach (var contour in contours) { IContour new_contour = new Contour(); foreach (ISegment segment in contour.GetSegments()) { if (!removed[i]) { new_contour.Add(segment); } i++; } figures.Add(new_contour); } return(figures.GetContours().ToList()); }
private void RootCanvas_OnMouseDown(object sender, MouseButtonEventArgs e) { if (Contour == null) { return; } var clickPosition = e.GetPosition(RootCanvas); var point = Contour.FirstOrDefault(p => p.DistanceTo(clickPosition) < (12 / Scale)); var index = Contour.IndexOf(point); if (e.LeftButton == MouseButtonState.Pressed) { if (index == -1) { // no points get clicked Contour.Add(clickPosition); ActivePointIndex = Contour.Count - 1; } else if (index == 0 && (Keyboard.Modifiers & ModifierKeys.Control) > 0) { //todo } else { ActivePointIndex = index; } } else if (e.RightButton == MouseButtonState.Pressed) { if (index != -1) { Contour.RemoveAt(index); } } }
internal int FtLineTo(ref FTVector to, IntPtr context) { _contour.Add(new LinearSegment(_position, FtPoint2(ref to))); _position = FtPoint2(ref to); return(0); }
public void SetUpTestCase() { Contour currentContour = new Contour(Contours.Count + 1); Contours.Add(currentContour); Point pt1 = new Point(0, 0); pt1.T = 0; currentContour.Add(pt1); Point pt2 = new Point(100, 0); pt2.T = 100; currentContour.Add(pt2); Point pt3 = new Point(0, 100); pt3.T = 0; currentContour.Add(pt3); //Point pt4 = new Point(0, 100); //pt4.T = 0; //currentContour.Add(pt4); //Point pt5 = new Point(0, 40); //pt5.T = 1; //currentContour.Add(pt5); currentContour.Add(pt1); }