A873054267 2017-04-13 01:14 采纳率: 0%
浏览 1213

请问一下基于ArcEngine来建立三维模型,为什么显示不了呢

public static void Display3DEM(AxSceneControl sc, ILayer TIFFLayer, ILayer DEMLayer, double Z)
{
IRasterSurface rsurface = new RasterSurface(); //定义基面
ISurface surface;
IRasterLayer DEMRasterLayer = DEMLayer as IRasterLayer; //接收基面
IRaster DEMraster = (IRaster)DEMRasterLayer.Raster; //基面rasterLayer转为RASTER

            IRasterBandCollection DEMrasterbands = DEMraster as IRasterBandCollection;//基面转为波段收集器
            IRasterBand DEMrasterband = DEMrasterbands.Item(0);//获取第一个波段
            rsurface.RasterBand = DEMrasterband;//获取的第一个波段写入到栅格基面波段中
            surface = rsurface as ISurface;//栅格表面转换为基面

            ILayerExtensions layerextensions = TIFFLayer as ILayerExtensions;//Provides access to the extensions of a layer
            I3DProperties properties = new Raster3DPropertiesClass();
            int i;
            object p3d;
            for (i = 0; i < layerextensions.ExtensionCount; i++)
            {
                p3d = layerextensions.get_Extension(i);
                if (p3d != null)
                {
                    properties = (I3DProperties)p3d;
                    break;
                }
            }

            properties.BaseOption = esriBaseOption.esriBaseSurface; //esriBaseOption包括三种表达,形状,面
            properties.BaseSurface = surface;                      //基面提供对功能表面的信息的访问,产生给定x,y位置的高度
            properties.Apply3DProperties(TIFFLayer);                  //应用3D属性
            properties.ZFactor = Z;                                //缩放因子

            sc.Scene.SceneGraph.RefreshViewers();
        }
  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
    • ¥15 求解 yolo算法问题
    • ¥15 虚拟机打包apk出现错误
    • ¥15 用visual studi code完成html页面
    • ¥15 聚类分析或者python进行数据分析
    • ¥15 三菱伺服电机按启动按钮有使能但不动作
    • ¥15 js,页面2返回页面1时定位进入的设备
    • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
    • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
    • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝