public override void _presenter_MouseMove(object sender, System.Windows.Input.MouseEventArgs e) { if (!(_startPoint.X == 0 && _startPoint.Y == 0)) { _currPoint = e.GetPosition(_inkCanvas); mouseGesture.Capturing((int)_currPoint.X, (int)_currPoint.Y); } }
public override void _presenter_MouseMove(object sender, System.Windows.Input.MouseEventArgs e) { //if (videoSummarization == null || videoSummarization != _inkCollector.VideoSummarization) //{ // this.videoSummarization = _inkCollector.VideoSummarization; //} //startIndex = VideoSummarization.getSelectedKeyFrameIndex(_startPoint);//, customSummarization); if (this.VideoSummarizationControl == null) { VideoPlayTimer = new System.Windows.Forms.Timer(); VideoPlayTimer.Interval = 1000; VideoPlayTimer.Tick += new System.EventHandler(VideoPlayTimer_Tick); this.VideoSummarizationControl = _inkCollector._mainPage.VideoSummarizationControl; VideoPlayTimer.Start(); } if (_startPoint.X == 0 && _startPoint.Y == 0) { _currPoint = e.GetPosition(_inkCanvas); _currPoint.X -= inkCanvasSpiralSummarizationMargin.Left; _currPoint.Y -= inkCanvasSpiralSummarizationMargin.Top; currIndex = videoSummarization.getSelectedKeyFrameIndex(_currPoint); //记录操作类型与持续时间 recordOperateTrace("MOVE"); if (currIndex != int.MinValue && currIndex < videoSummarization.ShowKeyFrames.Count && currIndex != preIndex && _inkCollector.IsShowUnbrokenKeyFrame) { moveTimerSecond = 0; MoveTimer.Start(); clearPreMessage(); Image currImage = InkConstants.getImageFromName(videoSummarization.ShowKeyFrames[currIndex].ImageName);// videoSummarization.ShowKeyFrames[currIndex].convertToNewKeyFrame().Image; left = videoSummarization.ShowKeyFrames[currIndex].Image.Margin.Left; top = videoSummarization.ShowKeyFrames[currIndex].Image.Margin.Top; //left += inkCanvasSpiralSummarizationMargin.Left; //top += inkCanvasSpiralSummarizationMargin.Top; if (_inkCollector.DefaultSummarizationNum == 1) { top += videoSummarization.InkCanvas.Margin.Top; top -= 10; } currImage.Margin = new Thickness(left, top, 0, 0); currImage.Width = 150; // videoSummarization.ShowKeyFrames[currIndex].Image.Width; currImage.Height = 100; // videoSummarization.ShowKeyFrames[currIndex].Image.Height; if (_inkCollector.DefaultSummarizationNum == 1 && !((TileSummarization)videoSummarization).Protect) { ; } else { _inkCanvas.Children.Add(currImage); } preImage = currImage; preIndex = currIndex; } else if (currIndex == int.MinValue) { if (preImage != null) { _inkCanvas.Children.Remove(preImage); } moveTimerSecond = 0; } //显示移动轨迹 if (moveStroke != null) { moveStroke.StylusPoints.Add(new StylusPoint(_currPoint.X, _currPoint.Y)); if (moveStroke.StylusPoints.Count > 300) { moveStroke.StylusPoints.RemoveAt(0); } } else { StylusPointCollection spc = new StylusPointCollection(); spc.Add(new StylusPoint(_currPoint.X, _currPoint.Y)); moveStroke = new Stroke(spc); moveStroke.DrawingAttributes.Color = Colors.Transparent; moveStroke.DrawingAttributes.Width = 3; moveStroke.DrawingAttributes.Height = 3; _inkCanvas.Strokes.Add(moveStroke); } } else { _currPoint = e.GetPosition(_inkCanvas); if (_inkCollector.DefaultSummarizationNum == 0) { mouseGesture.Capturing((int)_currPoint.X, (int)_currPoint.Y); } else if (_inkCollector.DefaultSummarizationNum == 1) { clearPreMessage(); moveTimerSecond = 0; double top = videoSummarization.InkCanvas.Margin.Top + _currPoint.Y - _prePoint.Y; //if (left <= 0 && left >VideoSummarizationControl.summarization._inkCanvas.ActualWidth -tapestrySummarization.Width ) //{ videoSummarization.InkCanvas.Margin = new Thickness(videoSummarization.InkCanvas.Margin.Left, top, 0, 0); } _prePoint = _currPoint; //记录操作类型与持续时间 recordOperateTrace("MOVE"); } }
public override void _presenter_MouseMove(object sender, System.Windows.Input.MouseEventArgs e) { if (this.VideoSummarizationControl == null) { this.VideoSummarizationControl = _inkCollector._mainPage.VideoSummarizationControl; } if (_startPoint.X == 0 && _startPoint.Y == 0) { _currPoint = e.GetPosition(_inkCanvas); _currPoint.X -= inkCanvasSpiralSummarizationMargin.Left; _currPoint.Y -= inkCanvasSpiralSummarizationMargin.Top; currIndex = videoSummarization.getSelectedKeyFrameIndex(_currPoint); //记录操作类型与持续时间 recordOperateTrace("MOVE"); if (currIndex != int.MinValue && currIndex != preIndex && _inkCollector.IsShowUnbrokenKeyFrame) { moveTimerSecond = 0; MoveTimer.Start(); clearPreMessage(); currIndex = currIndex >= videoSummarization.ShowKeyFrames.Count ? videoSummarization.ShowKeyFrames.Count - 1 : currIndex; currIndex = (currIndex == -1 ? 0 : currIndex); Image currImage = InkConstants.getImageFromName(videoSummarization.ShowKeyFrames[currIndex].ImageName); currImage.Width = 300; currImage.Height = 200; currImage.Margin = new Thickness((VideoSummarizationControl.summarization._inkCanvas.ActualWidth - currImage.Width) / 2, 200, 0, 0); tapestrySummarization.ParentInkcanvas.Children.Add(currImage); preImage = currImage; preIndex = currIndex; } else if (currIndex == int.MinValue) { if (preImage != null) { _inkCanvas.Children.Remove(preImage); } moveTimerSecond = 0; } //显示移动轨迹 if (moveStroke != null) { moveStroke.StylusPoints.Add(new StylusPoint(_currPoint.X, _currPoint.Y)); if (moveStroke.StylusPoints.Count > 300) { moveStroke.StylusPoints.RemoveAt(0); } } else { StylusPointCollection spc = new StylusPointCollection(); spc.Add(new StylusPoint(_currPoint.X, _currPoint.Y)); moveStroke = new Stroke(spc); moveStroke.DrawingAttributes.Color = Colors.Transparent; moveStroke.DrawingAttributes.Width = 3; moveStroke.DrawingAttributes.Height = 3; _inkCanvas.Strokes.Add(moveStroke); } } else { _currPoint = e.GetPosition(_inkCanvas); if (startIndex != int.MinValue && _currPoint.X > 0) { left = videoSummarization.InkCanvas.Margin.Left + _currPoint.X - _prePoint.X; //if (left <= 0 && left >VideoSummarizationControl.summarization._inkCanvas.ActualWidth -tapestrySummarization.Width ) //{ videoSummarization.InkCanvas.Margin = new Thickness(left, videoSummarization.InkCanvas.Margin.Top, 0, 0); //} if (left > 0) { left = 0; timebar.Show_EndTime = VideoSummarizationControl.summarization._inkCanvas.ActualWidth - videoSummarization.InkCanvas.Margin.Left; } else if (left < -tapestrySummarization.Width + VideoSummarizationControl.summarization._inkCanvas.ActualWidth) { left = videoSummarization.InkCanvas.Margin.Left; timebar.Show_EndTime = -left + tapestrySummarization.Width + videoSummarization.InkCanvas.Margin.Left; } else { timebar.Show_EndTime = -left + VideoSummarizationControl.summarization._inkCanvas.ActualWidth; } timebar.Show_StartTime = -left; // timebar.Show_EndTime = -left + VideoSummarizationControl.summarization._inkCanvas.ActualWidth; timebar.computeLocation(); _prePoint = _currPoint; } if (startIndex == int.MinValue && mouseGesture != null) { mouseGesture.Capturing((int)_currPoint.X, (int)_currPoint.Y); } //记录操作类型与持续时间 recordOperateTrace("MOVE"); } }