![]() | XDMBandTileMerge Class |
Namespace: Pixoneer.NXDL.NRS
public class XDMBandTileMerge : XDMBand
The XDMBandTileMerge type exposes the following members.
Name | Description | |
---|---|---|
![]() | XDMBandTileMerge | XDMBandTileMerge클래스의 기본 생성자로서, 멤버변수에 대하여 초기화를 수행한다. |
Name | Description | |
---|---|---|
![]() | GetInputParam | Tile영상을 Merge를 위한 입력 파라미터를 얻는다. |
![]() | SetInputParam | Tile영상을 Merge를 위한 입력 파라미터를 설정한다. |
입력밴드는 모두 같은 좌표체계이어야 하고, 데이터형식(datatype)도 동일해야 한다. 출력 해상도는 첫번째 추가하는 밴드의 해상도로 설정되며 입력 영상을 모두 아우르는 영역의 결과를 생성한다.
using Pixoneer.NXDL; using Pixoneer.NXDL.NRS; using Pixoneer.NXDL.NIO; // IO initialize to load image file XRasterIO RasterIO = new XRasterIO(); String strError = ""; if (RasterIO.Initialize(out strError) == false) { return; } // Image load String strFilePathLoad1 = "D:\\Sample\\IKONOS1.xdm"; String strFilePathLoad2 = "D:\\Sample\\IKONOS2.xdm"; XRSLoadFile xrsFileInput1 = RasterIO.LoadFile(strFilePathLoad1, out strError, false, eIOCreateXLDMode.All_NoMsg); XRSLoadFile xrsFileInput2 = RasterIO.LoadFile(strFilePathLoad2, out strError, false, eIOCreateXLDMode.All_NoMsg); // Set input param XBandParamTileMerge[] InputParam = new XBandParamTileMerge[3]; for (int i = 0; i < 3; i++) InputParam[i] = new XBandParamTileMerge(); InputParam[0].ArrBandList.Add(xrsFileInput1.GetBandAt(0)); InputParam[0].ArrBandList.Add(xrsFileInput2.GetBandAt(0)); InputParam[1].ArrBandList.Add(xrsFileInput1.GetBandAt(1)); InputParam[1].ArrBandList.Add(xrsFileInput2.GetBandAt(1)); InputParam[2].ArrBandList.Add(xrsFileInput1.GetBandAt(2)); InputParam[2].ArrBandList.Add(xrsFileInput2.GetBandAt(2)); // Create New process band and set input param XDMBandTileMerge[] bandProcess = new XDMBandTileMerge[3]; for (int i = 0; i < 3; i++) bandProcess[i] = new XDMBandTileMerge(); bandProcess[0].SetInputParam(ref InputParam[0]); bandProcess[1].SetInputParam(ref InputParam[1]); bandProcess[2].SetInputParam(ref InputParam[2]); // Display to MapView in realtime // create XRSSaveFile to save realtime band(XDMBandXXXX) // load another file to protect thread lock(it is stable and faster). XRSSaveFile fileSave = new XRSSaveFile(); XDMBand bandCast0 = (XDMBand)bandProcess[0]; XDMBand bandCast1 = (XDMBand)bandProcess[1]; XDMBand bandCast2 = (XDMBand)bandProcess[2]; fileSave.AddBand(ref bandCast0); fileSave.AddBand(ref bandCast1); fileSave.AddBand(ref bandCast2); // Save output file XThread thd = null; String strFilePathSave = "D:\\Sample\\Out_TileMerge.xdm"; if (!RasterIO.Export(ref fileSave, strFilePathSave, "XDM", out strError, thd)) { return; }