【技术类】如何获取镶嵌数据集中每一个栅格数据的物理路径
分享
有用户问过这样一个问题,如何获取镶嵌数据集中的某一个栅格数据的物理路径也就是原来的路径,我获取了每一个栅格数据然后用工作空间的路径+栅格数据的名称,但是这个得到的结果是不正确的,这周向esri的smirith请教后才恍然大悟,,看来我对镶嵌数据集的理解还不够深刻。
因为遇到过,所以铭记自信;又因为解决了,所以分享,感谢smrithi的指导
注:
Smrithi为Esri美国负责Raster Type扩展的开发人员
文章来源:http://blog.csdn.net/arcgis_all/article/details/8239517
因为遇到过,所以铭记自信;又因为解决了,所以分享,感谢smrithi的指导
private void button2_Click(object sender, EventArgs e) { IWorkspace pFileWs = GetSDEWorkspace("E:\\影像\\Geodatabase.gdb");
IMosaicDataset pMosaic = OpenMosaicDataset(pFileWs, "test1");
ITable pTable = pMosaic.Catalog as ITable;
int i = pTable.FindField("RASTER");
ICursor pCursor = pTable.Search(null, false);
IRow pRow = pCursor.NextRow();
while (pRow != null) {
IRasterCatalogItem pRasterCatalogItem = (IRasterCatalogItem)pRow;
IRasterDataset pRasterdataset = pRasterCatalogItem.RasterDataset;
//每一个item不是Raseter所以我用工作空间路径+栅格名称是错误的,用了这个接口就正确了 IFunctionRasterDataset pFunctionRD = pRasterdataset as IFunctionRasterDataset;
IArray pArray = pFunctionRD.MemberRasterDatasets;
for (int n = 0; n < pArray.Count; n++) { IRasterDataset pFunRst= pArray.get_Element(n) as IRasterDataset; string sName = pFunRst.CompleteName;
}
IDataset pDs = pRasterdataset as IDataset;
string s = pDs.Workspace.PathName;
pRow = pCursor.NextRow(); } }
注:
Smrithi为Esri美国负责Raster Type扩展的开发人员
文章来源:http://blog.csdn.net/arcgis_all/article/details/8239517
0 个评论
相关问题
- 作为Desktop用户对数据的获取比较乏力,可能缺了哪些知识?
- 有谁知道哪里可以免费获取各省市地图数据呢,包括详细的shape文件数据
- 有栅格数据a(大数据),小数据b,怎么从a中扣掉b,得到a数据剩下的部分?栅格能裁剪取反吗?
- ArcGIS如何求栅格图像的“质心”
- 两个栅格文件分辨率一致,但像元位置不一致,如何处理?
- 在windows server2008 R2 64位中安装了portal 10.5 设置好托管arcgis server站点,并用data store为托管数据库,发布数据出错
- ArcGIS数据库数据逐图幅裁剪
- cityengine怎么导入arcgis的shp数据,对shp数据有什么要求
- 栅格剪切遇到的一些疑问?
- ArcGis打开图层后显示unknown units,想要define一个投影坐标系,但数据大小似乎不一致
- 市区择房分析时,需要添加字段并将其赋值1或者-1,怎么做? 在开始编辑的时候,总是出现空间参考与数据框不匹配提示,原因是什么?会影响下面的赋值吗?