![]() | NXMapLayerStereoComposites Class |
Namespace: Pixoneer.NXDL.NXMap
public class NXMapLayerStereoComposites : NXMapLayer
The NXMapLayerStereoComposites type exposes the following members.
Name | Description | |
---|---|---|
![]() | NXMapLayerStereoComposites |
Name | Description | |
---|---|---|
![]() | CursorOffset | 커서 오프셋을 가져오거나 설정한다. |
![]() | FixedMode | 고정 모드인지를 확인하거나 설정한다. |
![]() | LayerVisible | 레이어의 도시여부를 확인하거나 설정한다. (Overrides NXMapLayer.LayerVisible.) |
![]() | TerrainFollowing | Terrain following 옵션을 확인하거나 설정한다. /// |
Name | Description | |
---|---|---|
![]() | ConvRightImagePosition | 왼쪽 커서의 영상 화소 위치를 오른쪽 커서의 화소 위치로 변환한다. |
![]() | FindMatchPoint(Double, Double) | 오른쪽 영상 화소 위치를 입력 왼쪽 영상 화소 위치와 맞는 위치를 찾는다. |
![]() | FindMatchPoint(Double, Double, Double, Double) | 오른쪽 영상 화소 위치를 입력 왼쪽 영상 화소 위치와 맞는 위치를 찾는다. |
![]() | GetMatchKernelSize | 영상 매칭을 위한 커널 크기를 가져온다. |
![]() | GetSearchOffset | 영상 매칭을 위한 검색 오프셋을 가져온다. |
![]() | GetXDMCompManagerL | 왼쪽 composite 관리자를 가져온다. |
![]() | GetXDMCompManagerR | 오른쪽 composite 관리자를 가져온다. |
![]() | Invalidate | 전체 화면을 갱신하도록 하며, 컨트롤의 내용을 다시 그리도록 한다. |
![]() | Lock | 쓰레드를 잠근다. |
![]() | SetMatchKernelSize | 영상 매칭을 위한 커널 크기를 설정한다. |
![]() | SetSearchOffset | 영상 매칭을 위한 검색 오프셋을 설정한다. |
![]() | SetYOffSetConst | Y 방향으로의 커서 오프셋을 설정한다. |
![]() | SyncStereoViewPixelOffset | MapView 인수를 이용하여 화소 오프셋 매개변수(스테레어 매개변수)를 동기화한다. |
![]() | UnLock | 잠긴 쓰레드를 해제한다. |
![]() | ZoomFit | 화면에 전체 영상이 보이도록 확대축소한다. |
![]() | ZoomOneToOne | 영상의 해상도에 대해 1:1로 도시하도록 확대축소한다. |
Name | Description | |
---|---|---|
![]() | OnStereoCursorPos | 스테레오 커서 위치가 변경되면 이에 대한 왼쪽/오른쪽 커서 위치를 반환하도록 발생한다. |
XRasterIO RasterIO = new XRasterIO(); String strError = ""; if (RasterIO.Initialize(out strError) == false) { return; } // Left and right Image load String strFilePathLoad1 = "D:\\Sample\\RS_Sample\\Epipolar\\po_120030_pan_0000010000.xdm"; String strFilePathLoad2 = "D:\\Sample\\RS_Sample\\Epipolar\\po_120030_pan_0010000000.xdm"; XRSLoadFile xrsFileInput1 = RasterIO.LoadFile(strFilePathLoad1, out strError, false, eIOCreateXLDMode.All_NoMsg); XRSLoadFile xrsFileInput2 = RasterIO.LoadFile(strFilePathLoad2, out strError, false, eIOCreateXLDMode.All_NoMsg); XDMBand bandL = xrsFileInput1.GetBandAt(0); XDMBand bandR = xrsFileInput2.GetBandAt(0); // Set Stereo mode and Color mask to NXMapView nxMapLayerStereoComposites1.Lock(); nxMapView1.StereoViewType = eStereoType.Anaglyph; nxMapView1.StereoColorMaskL = eStereoColorMask.Red; nxMapView1.StereoColorMaskR = eStereoColorMask.GreenBlue; nxMapView1.StereoFocusLayer = nxMapLayerStereoComposites1; // Set layer stereo composite nxMapLayerStereoComposites1.StereoCursor.CursorColor = Color.White; nxMapLayerStereoComposites1.StereoCursor.CursorSize = 20; nxMapLayerStereoComposites1.StereoCursor.CursorThick = 2; nxMapLayerStereoComposites1.StereoCursor.CursorType = XCursor.eCursorType.CROSSHAIR; nxMapLayerStereoComposites1.StereoCursor.CursorOperation = XCursor.eOperation.XOR; // Create Left and Right Composite XDMCompManager xdmCompManagerL = nxMapLayerStereoComposites1.GetXDMCompManagerL(); for (int i = 0; i < xdmCompManagerL.NumComp; i++) { XDMComposite comp = xdmCompManagerL.GetXDMCompositeAt(i); comp.Dispose(); } xdmCompManagerL.RemoveXDMCompositeAll(); XDMCompManager xdmCompManagerR = nxMapLayerStereoComposites1.GetXDMCompManagerR(); for (int i = 0; i < xdmCompManagerR.NumComp; i++) { XDMComposite comp = xdmCompManagerR.GetXDMCompositeAt(i); comp.Dispose(); } xdmCompManagerR.RemoveXDMCompositeAll(); // Create Left and Right composite. XDMComposite newCompL = new XDMComposite(); XDMComposite newCompR = new XDMComposite(); newCompL.Name = bandL.BandName; newCompL.Mode = eCompMode.RGB; if (bandL != null) newCompL.SetBand(ref bandL, 2); if (bandL != null) newCompL.SetBand(ref bandL, 1); if (bandL != null) newCompL.SetBand(ref bandL, 0); for (int i = 0; i < 3; i++) { newCompL.SetCutType(eCompCutType.Ct95, i); newCompL.SetStretchCoverage(eCompStretchCoverage.Band, i); newCompL.SetStretchType(eCompStretchType.Gaussian, i); } newCompR.Name = bandR.BandName; newCompR.Mode = eCompMode.RGB; if (bandR != null) newCompR.SetBand(ref bandR, 2); if (bandR != null) newCompR.SetBand(ref bandR, 1); if (bandR != null) newCompR.SetBand(ref bandR, 0); for (int i = 0; i < 3; i++) { newCompR.SetCutType(eCompCutType.Ct95, i); newCompR.SetStretchCoverage(eCompStretchCoverage.Band, i); newCompR.SetStretchType(eCompStretchType.Gaussian, i); } xdmCompManagerL.AddXDMComposite(ref newCompL); xdmCompManagerR.AddXDMComposite(ref newCompR); // Stereo composite layer. nxMapLayerStereoComposites1.ZoomFit(); nxMapLayerStereoComposites1.Invalidate(); nxMapLayerStereoComposites1.UnLock(); nxMapView1.RefreshScreen();