Пример #1
0
 static void ListenSocketReduce()
 {
     while (socketReduce.Connected)
     {
         try
         {
             ReduceModel modelClient = (ReduceModel)bfReduce.Deserialize(streamReduce);
             if (modelClient != null)
             {
                 ReduceModel modelServer = new ReduceModel();
                 modelServer.PointRawList    = modelClient.PointRawList;
                 modelServer.PointReduceList = modelClient.PointRawList;
                 DateTime timeStartReduce = DateTime.Now;
                 modelServer.PointReduceList = HelperDouglasPeucker.DouglasPeuckerReduction(modelClient.PointRawList, 0.00001);
                 DateTime timeEndReduce = DateTime.Now;
                 modelServer.TimeReduce = timeEndReduce.Subtract(timeStartReduce);
                 bfReduce.Serialize(streamReduce, modelServer);
                 streamReduce.Flush();
             }
             //socketReduce.Close();
         }
         catch (Exception ex)
         {
             Console.WriteLine("İstemci bağlantısı kesildi!");
             break;
         }
     }
 }
Пример #2
0
        private void button2_Click(object sender, EventArgs e)
        {
            ReloadGoogleMap(1);
            ReduceModel modelReduce = new ReduceModel();

            modelReduce.PointRawList = model.PointsRaw;

            bfReduce.Serialize(streamReduce, modelReduce);
            streamReduce.Flush();
        }
Пример #3
0
 void ListenSocketReduce()
 {
     while (true)
     {
         try
         {
             ReduceModel modelReduce = (ReduceModel)bfReduce.Deserialize(streamReduce);
             model.PointsReduce = modelReduce.PointReduceList;
             LoadGoogleMap();
             int    countReduce = modelReduce.PointReduceList.Count;
             int    countRaw    = modelReduce.PointRawList.Count;
             double ratioReduce = (1 - (Convert.ToDouble(countReduce) / Convert.ToDouble(countRaw))) * 100;
             this.Invoke((MethodInvoker)(() =>
                                         label4.Text = "count : " + listBox1.Items.Count.ToString()
                                         ));
             this.Invoke((MethodInvoker)(() =>
                                         label2.Text = "İndirgeme Oranı : %" + ratioReduce.ToString("0.##")
                                         ));
             this.Invoke((MethodInvoker)(() =>
                                         label3.Text = "İndirgeme süresi : " + modelReduce.TimeReduce.ToString()
                                         ));
             foreach (var item in model.PointsReduce)
             {
                 this.Invoke((MethodInvoker)(() =>
                                             listBox2.Items.Add(String.Format("{0} - {1}", item.X.ToString(), item.Y.ToString()))
                                             ));
             }
             this.Invoke((MethodInvoker)(() =>
                                         label5.Text = "count : " + listBox2.Items.Count.ToString()
                                         ));
         }
         catch (Exception ex)
         {
             MessageBox.Show("Server bağlantısı koptu! Program kapatılacak...");
             Environment.Exit(0);
         }
     }
 }