1. 程式人生 > >cesium 學習筆記(8)2018.11.08

cesium 學習筆記(8)2018.11.08

實體

一、各種屬性

1.id 唯一標誌,不設定的話會自動設定一個

2.name 不唯一

3.show 可見性

4.availability 可用性

5.description 描述

6.position 位置

7.orientation 方向

8.不常用的:viewFrom初始偏移量,parent父節點,properties與此實體關聯的任意屬性,graphics相關的形狀

box corridor cylinder ellipse ellipsoid path point polygon polyline polylineVolume rectangle wall b8illboard label model

這些是基本的形狀

此外還有比較重要的一些:

//標籤
label : {
    text : 'Citizens Bank Park',
    font : '14pt monospace',
    style: Cesium.LabelStyle.FILL_AND_OUTLINE,
    outlineWidth : 2,
    verticalOrigin : Cesium.VerticalOrigin.BOTTOM,
    pixelOffset : new Cesium.Cartesian2(0, -9)
}



//模型
model : {
    uri : '../../SampleData/models/CesiumGround/Cesium_Ground.gltf'
}

//廣告牌billboard     最簡單的廣告牌就是圖片和顯示大小
billboard : {
  image : 'http://localhost:81/images/2015/02-02/Philadelphia_Phillies.png',
  width : 64,
  height : 64
}

二、各種操作

 

1、增刪查

//增

//方法一
var entity = new Entity({
    id : 'uniqueId'
});
viewer.entities.add(entity);

//方法一 簡寫
viewer.entities.add({
    id : 'uniqueId'
});

//方法二
var entity = viewer.entities.getOrCreateEntity('uniqueId');







//查

var entity = viewer.entities.getById('uniqueId');



//刪

//方法一,先查id後刪
var entity = viewer.entities.getById('uniqueId');
viewer.entities.remove(entity) 
//方法二,直接id刪除
viewer.entities.removeById('uniqueId')
//方法三,刪除所有
viewer.entities.removeAll()

2、集體變化

function onChanged(collection, added, removed, changed){
  var msg = 'Added ids';
  for(var i = 0; i < added.length; i++) {
    msg += '\n' + added[i].id;
  }
  console.log(msg);
}
viewer.entities.collectionChanged.addEventListener(onChanged);