private void OnSizeChanged(object sender, SizeChangedEventArgs e) { var width = e.NewSize.Width; var height = e.NewSize.Height; _startPoint = new Vector2((float)width / 2f, (float)height / 2f); DrawCanvas.Invalidate(); }
private void OnPointerPressed(object sender, PointerRoutedEventArgs e) { _isDragging = true; _startPoint = e.GetCurrentPoint(DrawCanvas).Position.ToVector2(); _endPoint = _startPoint; _colorIndex = (_colorIndex + 1) % _colors.Length; _splineColor = _colors[_colorIndex]; DrawCanvas.Invalidate(); }
private void OnPointerMoved(object sender, PointerRoutedEventArgs e) { if (!_isDragging) { return; } _drawSpline = true; _endPoint = e.GetCurrentPoint(DrawCanvas).Position.ToVector2(); DrawCanvas.Invalidate(); }
private void BtnDraw_Click(object sender, EventArgs e) { Draw = true; UpdateParameters(); //Run in new thread to keep UI responsive Task.Run(() => { int MiddleCanvasX = DrawCanvas.Size.Width / 2; Trunk = new FractalLine(new Point(MiddleCanvasX, DrawCanvas.Size.Height), StartHeight, 90, null); AddBranch(Trunk, 0); DrawCanvas.Invalidate(); }); }
private void OnClearSplines(object sender, RoutedEventArgs e) { _pointData.Clear(); DrawCanvas.Invalidate(); }
private void OnHideControlPoints(object sender, RoutedEventArgs e) { _showControlPoints = false; DrawCanvas.Invalidate(); }