XDL TIP
[NIO] RPF(Raster Product Format)파일 구조 정보 얻기(TOC파일 로딩)
작성자
pixoneer
작성일
2016-11-21 09:53
조회
3601
// RPF(Raster Product Format) 파일 구조 읽기
// 1. RPF의 TOC파일을 로딩하기위해 Dialog박스를 생성
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "TOC file(*.TOC)|*.TOC";
openFileDialog.RestoreDirectory = true;
if (openFileDialog.ShowDialog() != DialogResult.OK) return;
// 2. XRPFToc객체를 생성
XRPFToc toc = new XRPFToc();
// 3. toc 파일을 로딩
if (toc.LoadFile(openFileDialog.FileName))
{
// 4. RPF의 Product 형태를 구분
if (toc.RPFProductType == eXRPFProductType.CADRG)
{
if (toc.Scale == eXRPFScale.S5M) // 스케일 정보 비교
{
XRPFBoundaryRecord record = toc.GetBoundaryRecord(0);
XGeoPoint ll = record.LL; // Lower Left 정보 획득
XGeoPoint ur = record.UR; // Upper Right 정보 획득
int nZone = record.nZone; // Zone 정보 획득
// 기타 XRPFBoundaryRecord객체로 부터 수평/수직 해상도 등을 획득.
// ....
}
else if (toc.Scale == eXRPFScale.S2M)
{
}
else if (toc.Scale == eXRPFScale.S1M)
{
}
else if (toc.Scale == eXRPFScale.S500K)
{
}
else if (toc.Scale == eXRPFScale.S250K)
{
}
else if (toc.Scale == eXRPFScale.S100K)
{
}
else if (toc.Scale == eXRPFScale.S50K)
{
}
}
else if (toc.RPFProductType == eXRPFProductType.CIB)
{
}
}
// 1. RPF의 TOC파일을 로딩하기위해 Dialog박스를 생성
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "TOC file(*.TOC)|*.TOC";
openFileDialog.RestoreDirectory = true;
if (openFileDialog.ShowDialog() != DialogResult.OK) return;
// 2. XRPFToc객체를 생성
XRPFToc toc = new XRPFToc();
// 3. toc 파일을 로딩
if (toc.LoadFile(openFileDialog.FileName))
{
// 4. RPF의 Product 형태를 구분
if (toc.RPFProductType == eXRPFProductType.CADRG)
{
if (toc.Scale == eXRPFScale.S5M) // 스케일 정보 비교
{
XRPFBoundaryRecord record = toc.GetBoundaryRecord(0);
XGeoPoint ll = record.LL; // Lower Left 정보 획득
XGeoPoint ur = record.UR; // Upper Right 정보 획득
int nZone = record.nZone; // Zone 정보 획득
// 기타 XRPFBoundaryRecord객체로 부터 수평/수직 해상도 등을 획득.
// ....
}
else if (toc.Scale == eXRPFScale.S2M)
{
}
else if (toc.Scale == eXRPFScale.S1M)
{
}
else if (toc.Scale == eXRPFScale.S500K)
{
}
else if (toc.Scale == eXRPFScale.S250K)
{
}
else if (toc.Scale == eXRPFScale.S100K)
{
}
else if (toc.Scale == eXRPFScale.S50K)
{
}
}
else if (toc.RPFProductType == eXRPFProductType.CIB)
{
}
}
전체 0개
번호 | 제목 | 작성자 | 작성일 | 조회 |
7 |
[NXDL] XGeoPoint클래스 사용하기
pixoneer
2016.11.19
3326
|
pixoneer | 2016.11.19 | 3326 |
6 |
[NXDL] XColorTable사용하기
pixoneer
2016.11.19
1650
|
pixoneer | 2016.11.19 | 1650 |
5 |
[NXDL] XGrid클래스 사용하기
pixoneer
2016.11.18
1875
|
pixoneer | 2016.11.18 | 1875 |
4 |
[NXDL] XVertex2i 클래스 사용하기
pixoneer_THK
2016.11.18
1597
|
pixoneer_THK | 2016.11.18 | 1597 |
3 |
[NXDL] XVertex3d클래스 사용하기
pixoneer_THK
2016.11.18
1602
|
pixoneer_THK | 2016.11.18 | 1602 |
2 |
[NXDL] XVertex2d 클래스 사용하기
pixoneer_THK
2016.11.18
1602
|
pixoneer_THK | 2016.11.18 | 1602 |
1 |
[NXDL] XAngle클래스 사용하기
pixoneer_THK
2016.11.18
1635
|
pixoneer_THK | 2016.11.18 | 1635 |