GeoThreeJSLayer

new Cesium.GeoThreeJSLayer(options)

ThreeJS图层类,将Three.js具备的能力整合于Cesium中,并将拥有地理坐标的Three.js物体对象准确分布于Cesium地理空间中。如,借助Three.js的渲染能力可在Cesium中实现模型对象的超真实渲染;借助Three.js的灯光能力可在Cesium中实现丰富绚丽的灯光特效;借助Three.js的模型布尔运算能力可在Cesium中实现模型的交、并、差等特殊功能等。
Name Type Description
options Object optional 参数选项
Name Type Description
viewer Viewer optional 三维球对象
Author:
  • yanggaohui
Example:
let geoThreeLayer = new Cesium.GeoThreeJSLayer({
     viewer: viewer
});
// 绑定到地图
geoThreeLayer.addTo(viewer);// 或者viewer.geoLayers.add(geoThreeLayer);
 let gltfLoader=new THREE.GLTFLoader();
 gltfLoader.load('/geomap-api/JsCesuimDemo/resource/models/City_Building/scene.gltf', function (gltf) {//场景模型
         let cityBuildingModel = gltf.scene;
         cityBuildingModel.traverse( function ( child ) {
              if ( child.isMesh ) {
                  child.material=child.material.clone();//改变单个物体颜色时很有用
              }
          });
          let cityBuildingObject=geoThreeLayer.add(cityBuildingModel,[108.9594295, 34.2186042, 0.0],{alongLatitude:true});
  });
Demo:

Extends

Members

enableColorCorrection : Boolean

是否开启颜色校正

Methods

add(threeObject, lnglathgt, opts)Object

在ThreeJS图层上添加Three.js构建的对象
Name Type Description
threeObject Object optional Three.js构建的对象
lnglathgt Array optional Three.js构建对象的地理坐标,格式为[lng,lat,hgt]
opts Object optional 初始化选项
Name Type Description
alongLatitude Boolean optional 对象的X轴是否与纬度保持平齐
Returns:
返回固定形态的结构对象
Example:
let cityBuildingObject=geoThreeLayer.add(model,[108.9594295, 34.2186042, 0.0],{alongLatitude:true});

addTo(map)

绑定到三维地图
Name Type Description
map viewer
Inherited From:

destroy()

销毁ThreeJS图层

hide()

隐藏ThreeJS图层

move(three3DObject, lnglathgt)

移动对象
Name Type Description
three3DObject Object optional GeoThreeJSLayer.add返回的对象
lnglathgt Array optional 坐标

remove(three3DObject)

从ThreeJS图层上移除对象
Name Type Description
three3DObject Object optional GeoThreeJSLayer.add返回的对象,该参数为空,则移除全部,不为空则移除指定对象

render()

渲染图层

rotate(three3DObject, angleValue)

旋转对象
Name Type Description
three3DObject Object optional GeoThreeJSLayer.add返回的对象
angleValue Number optional 旋转角度,范围0-360

scale(three3DObject, scaleValue)

缩放对象
Name Type Description
three3DObject Object optional GeoThreeJSLayer.add返回的对象
scaleValue Number optional 缩放值

show()

显示ThreeJS图层