static void test_CS_CPP_Graber_thread_process_img(bool isPrint, CSImgT imgT) { for (DataNames i = 0; i < DataNames.SCA2_CAL; ++i) { unit_test_print(isPrint, imgT.DN2Str(i)); } // --- test CSR3 ImgT data array byte[] senData = imgT.getDataByte(DataNames.SEN); // --- test CSImgT data info getting int cols = imgT.get_cols(DataNames.SEN); int rows = imgT.get_rows(DataNames.SEN); int S_cols = imgT.getS_cols(); int S_rows = imgT.getS_rows(); int S_OffsetX = imgT.getS_OffsetX(); int S_OffsetY = imgT.getS_OffsetY(); int R_cols = imgT.getR_cols(); int R_rows = imgT.getR_rows(); int R_AoiOffsetX = imgT.getR_AoiOffsetX(); int R_AoiOffsetY = imgT.getR_AoiOffsetY(); int R_AoiHeight = imgT.getR_AoiHeight(); int R_AoiWidth = imgT.getR_AoiWidth(); bool R_RangeAxis = imgT.getR_RangeAxis(); int C_cols = imgT.getC_cols(); int C_rows = imgT.getC_rows(); double C_offsetX = imgT.getC_offsetX(); double C_offsetY = imgT.getC_offsetY(); double C_scaleX = imgT.getC_scaleX(); double C_scaleY = imgT.getC_scaleY(); double C_lower_bound_x = imgT.getC_lower_bound_x(); double C_upper_bound_x = imgT.getC_upper_bound_x(); double C_lower_bound_r = imgT.getC_lower_bound_r(); double C_upper_bound_r = imgT.getC_upper_bound_r(); /// test CS ImgT data info getting int id = imgT.get_ID(); bool isE = imgT.isEmpty(); bool hasS = imgT.has(DataNames.SEN); bool hasR = imgT.has(DataNames.RAN); bool hasCI = imgT.has_ChunkInfo(); bool saveSenOk = imgT.SaveToIconFile("D:\\sen", DataNames.SEN); bool saveRanOk = imgT.SaveToIconFile("D:\\ran", DataNames.RAN); bool saveRacOk = imgT.SaveToIconFile("D:\\rac", DataNames.RAN_CAL); unit_test_print(true, "Get Image, id = {0}", id); }
private void btnLoadBuffer_Click(object sender, EventArgs e) { CSImgT img = LoadImage(); if (!img.isEmpty()) { var dnList = img.getAvalibleDataNames(); foreach (var dn in dnList) { Form f = new Form(); Bitmap src = BuiltGrayBitmap(img.getDataByte(dn), img.get_cols(dn), img.get_rows(dn)); if (dn == DataNames.SEN) { f.Text = "激光线图像 | Sensor Image"; src = BuiltGrayBitmap(img.getDataByte(dn), img.get_cols(dn), img.get_rows(dn)); } else if (dn == DataNames.RAN) { f.Text = "高度图像 | Range Image"; src = BuiltGrayBitmap(img.getDataWord(dn), img.get_cols(dn), img.get_rows(dn)); } else if (dn == DataNames.RAN_CAL) { f.Text = "标定后的高度图像 | Calibrated Range Image"; src = BuiltGrayBitmap(img.getDataFloat(dn), img.get_cols(dn), img.get_rows(dn)); } else if (dn == DataNames.REF) { f.Text = "激光强度图像 | Reflectance Image"; src = BuiltGrayBitmap(img.getDataByte(dn), img.get_cols(dn), img.get_rows(dn)); } else if (dn == DataNames.REF_CAL) { f.Text = "标定后的激光强度图像 | Calibrated Reflectance Image"; src = BuiltGrayBitmap(img.getDataByte(dn), img.get_cols(dn), img.get_rows(dn)); } IntPtr pp = new IntPtr(); Size imgSize = new Size(src.Width / 3, src.Height / 3); f.BackgroundImage = src.GetThumbnailImage(imgSize.Width, imgSize.Height, null, pp); f.Size = new Size(imgSize.Width, imgSize.Height + 30); f.MaximumSize = new Size(imgSize.Width, imgSize.Height + 30); f.Show(); } } }