public IntersectionPointViewModel()
        {
            viewPortArea = new ViewPortArea(0, 1000, 0, 1000);

            //UpdateGraphics(IntersectionPoint);
            UpdateGraphicsCommand = new DelegateCommand(UpdateGraphics);
        }
        public MainWindowTwoLines()
        {
            InitializeComponent();
            viewPortArea = new ViewPortArea(0, 1000, 0, 1000);

            UpdateGraphics();
        }
        public void UpdateGraphics(object parameter)
        {
            MeshPointsControl.viewPortCanvas.Children.Clear();

            #region Points
            SolidColorBrush solidColorBrush = new SolidColorBrush(Color.FromRgb(50, 50, 50));

            if ((MeshPoints.Points != null) && (MeshPoints.Points.Count > 0))
            {
                foreach (PointXY point in MeshPoints.Points)
                {
                    Ellipse circleAtPoint = new Ellipse();
                    circleAtPoint.Fill            = solidColorBrush;
                    circleAtPoint.Stroke          = Brushes.Red;
                    circleAtPoint.StrokeThickness = 1;
                    circleAtPoint.Width           = 5;
                    circleAtPoint.Height          = 5;
                    Canvas.SetLeft(circleAtPoint, (ViewPortArea.XNormalize(point.X, MeshPointsControl.viewPortCanvas.Width) - (circleAtPoint.Width / 2)));
                    Canvas.SetTop(circleAtPoint, (ViewPortArea.YNormalize(point.Y, MeshPointsControl.viewPortCanvas.Height) - (circleAtPoint.Height / 2)));
                    MeshPointsControl.viewPortCanvas.Children.Add(circleAtPoint);
                }
            }
            #endregion

            #region Raw Lines
            if (MeshPointsControl.chkRawLines.IsChecked == true)
            {
                foreach (LineSegment lineItem in MeshPoints.RawLines)
                {
                    Line line = new Line();
                    line.X1              = ViewPortArea.XNormalize(lineItem.StartPoint.X, MeshPointsControl.viewPortCanvas.Width);
                    line.Y1              = ViewPortArea.YNormalize(lineItem.StartPoint.Y, MeshPointsControl.viewPortCanvas.Height);
                    line.X2              = ViewPortArea.XNormalize(lineItem.EndPoint.X, MeshPointsControl.viewPortCanvas.Width);
                    line.Y2              = ViewPortArea.YNormalize(lineItem.EndPoint.Y, MeshPointsControl.viewPortCanvas.Height);
                    line.Stroke          = Brushes.Red;
                    line.StrokeThickness = 2;
                    MeshPointsControl.viewPortCanvas.Children.Add(line);
                }
            }
            #endregion

            #region Mesh Lines
            if (MeshPointsControl.chkMeshLines.IsChecked == true)
            {
                foreach (LineSegment lineItem in MeshPoints.MeshLines)
                {
                    Line line = new Line();
                    line.X1              = ViewPortArea.XNormalize(lineItem.StartPoint.X, MeshPointsControl.viewPortCanvas.Width);
                    line.Y1              = ViewPortArea.YNormalize(lineItem.StartPoint.Y, MeshPointsControl.viewPortCanvas.Height);
                    line.X2              = ViewPortArea.XNormalize(lineItem.EndPoint.X, MeshPointsControl.viewPortCanvas.Width);
                    line.Y2              = ViewPortArea.YNormalize(lineItem.EndPoint.Y, MeshPointsControl.viewPortCanvas.Height);
                    line.Stroke          = Brushes.Blue;
                    line.StrokeThickness = 2;
                    MeshPointsControl.viewPortCanvas.Children.Add(line);
                }
            }
            #endregion
        }
        public MainWindow()
        {
            InitializeComponent();
            viewPortArea = new ViewPortArea(0, 1000, 0, 1000);
            inputPoints  = new List <PointXY>();
            meshPoints   = new MeshPoints(inputPoints);

            UpdateGraphics();
        }
        public MeshPointsViewModel()
        {
            viewPortArea = new ViewPortArea(0, 1000, 0, 1000);
            InputPoints  = new List <PointXY>();
            MeshPoints   = new MeshPoints(InputPoints);
            HasPoint     = "No";

            LoadPointsCommand     = new DelegateCommand(LoadPoints);
            UpdateGraphicsCommand = new DelegateCommand(UpdateGraphics, UpdateGraphicsCanExecute);
            ComputeLinesCommand   = new DelegateCommand(ComputeLines, ComputeLinesCanExecute);
        }
        public MainWindow()
        {
            InitializeComponent();

            // Initializing coordinates with UTM coordinate system
            viewPort         = new ViewPortArea(576158, 576954, 9716967, 9717580);
            viewPort.RoverX  = 576246;
            viewPort.RoverY  = 9717055;
            viewPort.TargetX = 576493;
            viewPort.TargetY = 9717345;
            pathDistance     = viewPort.PathDistance();

            lblRover.Text    = "Rover: " + viewPort.RoverX.ToString() + " x " + viewPort.RoverY.ToString();
            lblTarget.Text   = "Target: " + viewPort.TargetX.ToString() + " x " + viewPort.TargetY.ToString();
            lblDistance.Text = "Distance: " + Convert.ToInt32(pathDistance).ToString();

            AddGraphics();

            emailSMTP = new EmailSMTP(txtToEmail.Text, txtMessage.Text);
        }