|
NXImageLayerStereoComposites Class
|
composite를 이용하여 스테레오 영상을 도시하는 컨트롤을 나타낸다.
Inheritance Hierarchy
Namespace: Pixoneer.NXDL.NXImageAssembly: NXImage (in NXImage.dll) Version: 2.0.3.38
Syntaxpublic class NXImageLayerStereoComposites : NXImageLayer
The NXImageLayerStereoComposites type exposes the following members.
Constructors
Properties
Methods
Events
Example
예제 #1:
XRasterIO RasterIO = new XRasterIO();
String strError = "";
if (RasterIO.Initialize(out strError) == false)
{
return;
}
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);
nxImageLayerStereoComposites1.Lock();
nxImageView1.StereoViewType = eStereoType.Anaglyph;
nxImageView1.StereoColorMaskL = eStereoColorMask.Red;
nxImageView1.StereoColorMaskR = eStereoColorMask.GreenBlue;
nxImageView1.StereoFocusLayer = nxImageLayerStereoComposites1;
nxImageLayerStereoComposites1.StereoCursor.CursorColor = Color.White;
nxImageLayerStereoComposites1.StereoCursor.CursorSize = 20;
nxImageLayerStereoComposites1.StereoCursor.CursorThick = 2;
nxImageLayerStereoComposites1.StereoCursor.CursorType = XCursor.eCursorType.CROSSHAIR;
nxImageLayerStereoComposites1.StereoCursor.CursorOperation = XCursor.eOperation.XOR;
XDMCompManager xdmCompManagerL = nxImageLayerStereoComposites1.GetXDMCompManagerL();
for (int i = 0; i < xdmCompManagerL.NumComp; i++)
{
XDMComposite comp = xdmCompManagerL.GetXDMCompositeAt(i);
comp.Dispose();
}
xdmCompManagerL.RemoveXDMCompositeAll();
XDMCompManager xdmCompManagerR = nxImageLayerStereoComposites1.GetXDMCompManagerR();
for (int i = 0; i < xdmCompManagerR.NumComp; i++)
{
XDMComposite comp = xdmCompManagerR.GetXDMCompositeAt(i);
comp.Dispose();
}
xdmCompManagerR.RemoveXDMCompositeAll();
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);
nxImageLayerStereoComposites1.ZoomFit();
nxImageLayerStereoComposites1.Invalidate();
nxImageLayerStereoComposites1.UnLock();
nxImageView1.RefreshScreen();
See Also