/// <summary> /// LiveQuadDetectorControl constructor /// </summary> /// <param name="binding"></param> public LiveQuadDetectorControl(ISkillBinding binding) : base(binding) { // Update the view of the initial binding values m_liveQuadDetectorBindingFeatureValues = ExtractBindingValues(binding); m_interactiveControl = new LiveQuadDetectorSkillInteractiveControl(); m_interactiveControl.ResetCheckedUnchecked += LiveQuadDetectorSkillInteractiveControl_ResetCheckedUnchecked; m_imageGrid.Children.Add(m_canvas); m_image.SetValue(Canvas.ZIndexProperty, -1); m_image.SizeChanged += Image_SizeChanged; // Add Quad results control m_quadsResultRenderer = new QuadSetRenderer(ref m_canvas, 1); m_quadsResultRenderer.IsVisible = false; Children.Add(m_interactiveControl); m_interactiveControl.UpdateDisplayedInputValues(m_liveQuadDetectorBindingFeatureValues); }
/// <summary> /// QuadDetectorControl constructor /// </summary> /// <param name="binding"></param> public QuadDetectorControl(ISkillBinding binding) : base(binding) { // Update the view of the initial binding values m_quadDetectorBindingFeatureValues = ExtractBindingValues(binding); m_interactiveControl = new QuadDetectorSkillInteractiveControl(); m_imageGrid.Children.Add(m_canvas); m_image.SetValue(Canvas.ZIndexProperty, -1); m_image.SizeChanged += Image_SizeChanged; // Add SubRectangleMargin control foreach (var margin in m_margins) { m_canvas.Children.Add(margin); } m_interactiveControl.SubMargingValueChanged += QuadDetectorSkillInteractiveControl_SubMargingValueChanged; m_interactiveControl.MaxQuadValueChanged += QuadDetectorSkillInteractiveControl_MaxQuadValueChanged; m_interactiveControl.NumberOfPixelsPerEdgeValueChanged += QuadDetectorSkillInteractiveControl_NumberOfPixelsPerEdgeValueChanged; // Add Quad results control m_quadsResultRenderer = new QuadSetRenderer(ref m_canvas, 10); m_quadsResultRenderer.IsVisible = false; // Add BaseQuad control m_baseQuadRenderer = new InteractiveQuadRenderer(ref m_canvas); m_baseQuadRenderer.IsVisible = false; m_baseQuadRenderer.CornersChanged += InteractiveQuadRenderer_CornersChanged; m_baseQuadRenderer.CornersChangeCompleted += InteractiveQuadRenderer_CornersChangeCompleted; m_interactiveControl.SpecifyBaseQuadCheckedUnchecked += QuadDetectorSkillInteractiveControl_SpecifyBaseQuadCheckedUnchecked; // Add CenterPoint control m_centerPointControl.ManipulationDelta += QuadRendererCenterPoint_ManipulationDelta; m_centerPointControl.ManipulationCompleted += QuadRendererCenterPoint_ManipulationCompleted; Mouse.SetCursor(m_centerPointControl, Windows.UI.Core.CoreCursorType.Pin); m_canvas.Children.Add(m_centerPointControl); m_interactiveControl.CenterPointCheckedUnchecked += QuadDetectorSkillInteractiveControl_CenterPointCheckedUnchecked; Children.Add(m_interactiveControl); m_interactiveControl.UpdateDisplayedInputValues(m_quadDetectorBindingFeatureValues); }