private void svd_pso_Click(object sender, EventArgs e) { Watermarked = new ImageCtrl(); Bitmap res = new Bitmap(OriginalPic.Image, new Size(watermarkedImg.Width, watermarkedImg.Height)); Bitmap temp = new Bitmap(RDWTImage.Image); Bitmap tempwm = new Bitmap(RDWTWatermark.Image); markedred = new double[Hostred.GetLength(0), Hostred.GetLength(1)]; markedblue = new double[Hostblue.GetLength(0), Hostblue.GetLength(1)]; markedgreen = new double[Hostgreen.GetLength(0), Hostgreen.GetLength(1)]; for (int i = 0; i < markedred.GetLength(0); i++) { for (int j = 0; j < markedred.GetLength(1); j++) { markedred[i, j] = Hostred[i, j]; markedblue[i, j] = Hostblue[i, j]; markedgreen[i, j] = Hostgreen[i, j]; } } markedred = svd_pso_operation(markedred, Wmred, temp, tempwm, vtWmRed, "red"); markedgreen = svd_pso_operation(markedgreen, Wmgreen, temp, tempwm, vtWmGreen, "green"); markedblue = svd_pso_operation(markedblue, Wmblue, temp, tempwm, vtWmBlue, "blue"); generateImage(markedred, markedgreen, markedblue, res); watermarkedImg.Image = res; }
private void WaitingThread(object flag) { while (true) { if (_downloadThread.ThreadState == ThreadState.Stopped) { _downloadThread = ImageCtrl.AsyncDownload(); } if (ImageCtrl.CheckCurrent((bool)flag)) { this.Dispatcher.BeginInvoke(new Action(delegate { if ((bool)flag) { BtnLeft_Click(null, null); } else { BtnRight_Click(null, null); } })); break; } Thread.Sleep(100); } }
public MainWindow() { InitializeComponent(); SettingCtrl.InitializeParameter(this); ImageCtrl.InitializeParameter(SettingCtrl.SettingInstant, this); _downloadThread = ImageCtrl.AsyncDownload(); StateSwitch(State.Busy); AsyncWaiting(true); }
private void BtnRight_Click(object sender, RoutedEventArgs e) { if (!ImageCtrl.CheckCurrent(false)) { StateSwitch(State.Busy); AsyncWaiting(false); } else { StateSwitch(State.BeforeSlide); ImageCtrl.LoadRightImage(); } }
private void BtnOK_Click(object sender, RoutedEventArgs e) { if (_state.Equals(State.Setting)) { ImageCtrl.Visibility = Visibility.Visible; SettingCtrl.Hide(); //Download now ImageCtrl.InitializeParameter(SettingCtrl.SettingInstant, this); _downloadThread = ImageCtrl.AsyncDownload(); StateSwitch(State.Busy); AsyncWaiting(true); } else { ImageCtrl.SetWallpaper(); } }
public void CheckButton() { if (ImageCtrl.CheckMax()) { BtnLeft.Visibility = Visibility.Hidden; } else { BtnLeft.Visibility = Visibility.Visible; } if (ImageCtrl.CheckMin()) { BtnRight.Visibility = Visibility.Hidden; } else { BtnRight.Visibility = Visibility.Visible; } BtnSetting.Visibility = Visibility.Visible; BtnOK.Visibility = Visibility.Visible; }