您好,提示这个说明您的scene没有赋值呀。
先把scene设置为全局变量,写了这句scene = sceneControl.get_scene()也就赋值成功了。
function onPageLoad()
{
//初始化三维场景控件
try
{
//初始化三维场景控件实例,参数为包含控件的HTML元素
sceneControl = new SuperMap.Web.UI.Controls.SceneControl($get("sceneControlDiv"), initCallback, failedCallback);
}
catch(e)
{
//若没有安装插件,则抛出该异常
if (e.name == SuperMap.Web.Realspace.ExceptionName.PlugInNotInstalled)
{
var url = htmlUrl + "/iserver/iClient/for3D/plugin/Setup.exe";
document.write("<a href='"+url+"'>未检测到 SuperMap iClient3D for Plugin 插件,请单击此处下载并安装插件。</a>");
return;
}
//若使用非IE浏览器,则抛出该异常
else if (e.name == SuperMap.Web.Realspace.ExceptionName.BrowserNotSupport)
{
document.write("<p>SuperMap iClient3D for Plugin 目前仅支持 InternetExplorer 浏览器,请更换浏览器后重新尝试加载本页面。</p>");
return;
}
//抛出其他异常
else
{
alert(e.message);
}
}
}
//控件初始化完成后的回调函数,初始化完成之后才能进行数据加载
function initCallback()
{
//获取Realspace控件的场景,控件和场景是一对一的捆绑关系
scene = sceneControl.get_scene();
//获取跟踪图层
trackingLayer = scene.get_trackingLayer3D();
}
//控件初始化失败后的回调函数
function failedCallback()
{
alert("Realspace initialized failed!");
}