首页 / 浏览问题 / 组件GIS / 问题详情
iobjects c++ 通视分析
56EXP 2019年11月25日
请问一下iobjects c++如何进行两点的通视分析

1个回答

您好,二维通视分析是针对栅格数据集进行分析,可以使用UG3DAnalyst类中的函数实现,如单点对多点的可视性使用IsVisibile()函数。
694EXP 2019年11月25日

 我用   UG3DAnalyst *sad=new UG3DAnalyst();
   UGbool dsdfa= sad->InterVisibility(pRaster,pt1,pt2,0);

获取是否通视,但是在使用函数InterVisibility时提示接收到操作系统信号被停止,我查看了pRaster是有值的

检查一下库文件是否添加,如SuGridAnalystd.lib
LIBS +=-L"../../bin/bin" \
            -lSuGridAnalyst\

这个头文件已经加了的,会不会与我获取的数据集方式有关? 我是用 pRaster = (UGDatasetRaster*)pDatasource->GetDatasets();来获取所有数据集的?
这个获取的不是Dataset,而是Datasets,是一个集合。用GetDataset()或者用GetDatasets().GetAt()等。
现在已经把高程数据添加到二维地图中,我用intervisibility来分析两点间的通视情况,但是它需要传入的是UGPOint3D类型的数据,我应该如何从地图中获取到这个类型的数据?
...