屏幕图层类。
一个三维场景有且只有一个屏幕图层,可以向屏幕图层添加任何三维要素对象,系统会为添加的每个对象建立索引。通过该类还可以设置对象的显示位置、大小,也可以删除不需要的几何对象。
对象模型

语法
ASP.NET Ajax Javascript (Specification) | |
---|---|
SuperMap.Web.Realspace.ScreenLayer3D = function() {}; |
ASP.NET Ajax Javascript (Usage) | |
---|---|
var instanceVar = new SuperMap.Web.Realspace.ScreenLayer3D(); |
备注
屏幕图层不同于三维图层、地形图层、影像图层和跟踪图层,屏幕图层中的对象并不是依据对象的坐标信息将其放到三维场景中的地球上,而是放在屏幕上(三维窗口表面)。
屏幕图层上的几何对象不随三维场景中球体的旋转、倾斜等操作而变化,而是可以随着三维窗口的改变而变化,如随着三维窗口的放大、缩小而改变相应的位置。
可以说屏幕图层上的对象是相对于三维窗口静止的,这样,可以通过屏幕图层放置诸如 Logo、说明性文字等需要静止显示在三维窗口中的内容。如下图所示,在屏幕图层中添加了Logo。

示例
以下代码示范了如何在屏幕图层中加入图片。
JavaScript | ![]() |
---|---|
function ScreenLayer3DTest() { var sceneControl = new SuperMap.Web.UI.Controls.SceneControl(document.getElementById("sceneControlDiv")); var scene = sceneControl.get_scene(); 在屏幕坐标 x、y、z 处创建一个 GeoPicture3D 几何对象,并从服务器上获取一张图片 var point = new SuperMap.Web.Core.Point3D(x,y,z); var picture = new SuperMap.Web.Core.GeoPicture3D(point); picture.fromImageFile("url"); 创建一个几何对象属性为 picture 的三维要素 var logo = new SuperMap.Web.Core.Feature3D(); logo.set_geometry(picture); 在屏幕图层上添加 logo scene.get_screenLayer3D().add(logo,"LOGO"); scene.get_screenLayer3D().set_isVisible(true); scene.refresh(); } |
继承层次
Object
Sys.Component
SuperMap.Web.Realspace.ScreenLayer3D
需求
操作系统: Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7
浏览器: Internet Explorer 6 以上