private void Viewport_PointerPressed_1(object sender, PointerRoutedEventArgs e) { // Pick control point var mp = GetMousePoint(e); PickedPoint = (from p in points where p.X > mp.X - PointHitZoneSizeHalf && p.X < mp.X + PointHitZoneSizeHalf && p.Y > mp.Y - PointHitZoneSizeHalf && p.Y < mp.Y + PointHitZoneSizeHalf select p).FirstOrDefault(); Draw(); }
private void Viewport_PointerReleased_1(object sender, PointerRoutedEventArgs e) { // Only add new control point if [DEL] wasn't pressed if (PickedPoint == null) { points.Add(GetMousePoint(e)); } PickedPoint = null; Draw(); }
private void DrawPoint(ControlPoint p, Color color, int halfSizeOfPoint) { var x1 = p.X - halfSizeOfPoint; var y1 = p.Y - halfSizeOfPoint; var x2 = p.X + halfSizeOfPoint; var y2 = p.Y + halfSizeOfPoint; writeableBmp.DrawRectangle(x1, y1, x2, y2, color); }
private void Image_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { // Pick control point var mp = GetMousePoint(e); PickedPoint = (from p in points where p.X > mp.X - PointSizeHalf && p.X < mp.X + PointSizeHalf && p.Y > mp.Y - PointSizeHalf && p.Y < mp.Y + PointSizeHalf select p).FirstOrDefault(); Draw(); }
private void Image_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { // Only add new control point is [DEL] wasn't pressed if (!isInDelete && PickedPoint == null) { points.Add(GetMousePoint(e)); } PickedPoint = null; isInDelete = false; Draw(); }
private void RemovePickedPointPoint() { if (PickedPoint != null) { points.Remove(PickedPoint); PickedPoint = null; isInDelete = true; Draw(); } }
private void DrawPoint(ControlPoint p, Color color) { var x1 = p.X - PointSizeHalf; var y1 = p.Y - PointSizeHalf; var x2 = p.X + PointSizeHalf; var y2 = p.Y + PointSizeHalf; writeableBmp.DrawRectangle(x1, y1, x2, y2, color); }