private void Window_Loaded(object sender, RoutedEventArgs e) { wrapper = new OmniDriver.CCoWrapper(); wrapper.setIntegrationTime(0, 100000); txt_intergrationTime.Text = "0.1"; txt_collectDataTime.Text = "0.1"; numberOfSpectrometers = wrapper.openAllSpectrometers(); if (numberOfSpectrometers == 0) { MessageBox.Show("找不到光谱仪"); textBox1.Text = "0"; return; } else { textBox1.Text = numberOfSpectrometers.ToString(); wavelengthArray = (double[])wrapper.getWavelengths(0); } for (int i = 0; i < 2068; ++i) { xCoord[i] = i; yCoord[i] = 0; } xDataSource = new EnumerableDataSource <double>(xCoord); xDataSource.SetXMapping(x => x); datasDataSource = new EnumerableDataSource <double>(yCoord); datasDataSource.SetYMapping(y => y); compositeDataSource = new CompositeDataSource(xDataSource, datasDataSource); plotter.AddLineGraph(compositeDataSource, new Pen(Brushes.Blue, 1), new PenDescription("光谱曲线")); plotter.Viewport.FitToView(); plotter2.AddLineGraph(datapoint, new Pen(Brushes.Red, 2), new PenDescription("亮度变化曲线")); }
private static Thread[] read_threads; //每个通道分配一个read_spec的线程 public spec_wrapper() { cnt_of_devices = 0; build_num = 0; is_test_model = true; wrapper = new OmniDriver.CCoWrapper(); }
static void Main(string[] args) { int numberOfSpectrometers; // actually attached and talking to us OmniDriver.CCoWrapper wrapper = new OmniDriver.CCoWrapper(); // obsolete wrapper.CreateWrapper(); // this is the object through which we will access all of Omnidriver's capabilities numberOfSpectrometers = wrapper.openAllSpectrometers(); // Gets an array of spectrometer objects if (numberOfSpectrometers == 0) { wrapper.closeAllSpectrometers(); return; } else if (numberOfSpectrometers == 1) { Console.WriteLine("Starting wavelength extraction...\n\n"); int pixelCount = wrapper.getNumberOfPixels(0); double[] wavelength = new double[pixelCount]; wavelength = wrapper.getWavelengths(0); string path = System.IO.Directory.GetCurrentDirectory(); System.IO.FileStream fileStream = new System.IO.FileStream(path + "\\wavelength.txt", System.IO.FileMode.Create, System.IO.FileAccess.Write); System.IO.StreamWriter sw = new System.IO.StreamWriter(fileStream); for (int i = 0; i < pixelCount; i++) { sw.WriteLine(wavelength[i].ToString()); } Console.WriteLine("Wavelength extraction has been done."); Console.WriteLine("Please input enter key to exit this program."); Console.ReadLine(); //Console.WriteLine("GIT TESTING!!"); //Console.WriteLine("dummy"); wrapper.closeAllSpectrometers(); sw.Close(); fileStream.Close(); } }