cesium entity類


 //1、box盒子,dimensions為尺寸(長寬高),outline為邊界(默認false不顯示)
    var redBox = myviewer.entities.add({
            show:false,
            id:"0204",
            name:"盒子",
            description:"一個長條盒子......................",
            position:Cesium.Cartesian3.fromDegrees(113,31,10000),
            
            box:{
            dimensions: new Cesium.Cartesian3(400,300,100000),
            material:Cesium.Color.RED,
            outline:true,
            outlineColor:Cesium.Color.BLUE,
             //shadows          //陰影還沒有嘗試成功
            }
        });

 //2、旋轉的圓形或者橢圓

    var xza = new Cesium.EllipseGraphics({
        semiMinorAxis:100000,
        semiMajorAxis:300000,
        height:100000,
        extrudedHeight:10000,//拉升,拔高,單位米
        rotation:Cesium.Math.toRadians(30),//一種數字屬性,指定從北逆時針方向橢圓的旋轉。
        material:Cesium.Color.BLUE.withAlpha(0.5),
        outline:true        
      })
    var greencircle = myviewer.entities.add({
        show:false,
        name:"一個圓",
        position:Cesium.Cartesian3.fromDegrees(113,31,10000),
        ellipse:xza
      })
//3、走廊形狀    
    var redCorr =myviewer.entities.add({
         name:"走廊形狀",
         corridor:{
                positions:Cesium.Cartesian3.fromDegreesArray([113,31,114,36,115,33]),
                width:1000,         
                extrudedHeight:1000,//實體的拉升高度
                height:0,//實體的海拔高度
                material:Cesium.Color.RED.withAlpha(0.5),
                outline:true,
                outlineColor:Cesium.Color.BLACK
                //granularity:Cesium.Math.RADIANS_PER_DEGREE(30)
            }
       });
//4、polygon 
    var myPolygon1 = new Cesium.PolygonGraphics({
        extrudedHeight:10000,
        //height:1000,
        closeTop:false,
        closeButton:false,
        //fromDegreesArrayHeights(113,31,高程),則直接顯示高程,按照西-北-東-南的逆時針方向,否則形狀會出乎想象
        hierarchy : Cesium.Cartesian3.fromDegreesArray([114, 31.0,
                                                        114,33,
                                                        113.0, 33.0,
                                                        113.0, 31.0]),
        material : Cesium.Color.RED
    });
    var polygonshow = myviewer.entities.add({
        name:"polygon01",
        polygon:myPolygon1
    });
    //5、polyline
    var mypolyline = new Cesium.PolylineGraphics({
      positions:Cesium.Cartesian3.fromDegreesArray([123,31,103,31]),
      width:10,
      material:Cesium.Color.BLACK,
      clampToGround:true,
      material: new Cesium.PolylineArrowMaterialProperty(Cesium.Color.PURPLE), //體會編碼,下面的覆蓋上面,material對應了一個實例
      arcType:Cesium.ArcType.GEODESIC //這種是測地線,另一種 arcType:Cesium.ArcType.RHUMB是航海線
    })
    var polylineshow = myviewer.entities.add({
      name:"mypolyine",
      polyline :mypolyline
    });

      myviewer.flyTo(polylineshow);

6、entity實現的一些輔助功能

6.1加載或生成entity的朝向:orientation 

例如:
    var position = Cesium.Cartesian3.fromDegrees(118.6265572,32.0642026, 0.0);
    //x,y,z軸的傾斜角度
    var hpr = new Cesium.HeadingPitchRoll(Cesium.Math.toRadians(135), 0.0, 0.0);
    //確定目標x,y,z軸方向
    var orientation = Cesium.Transforms.headingPitchRollQuaternion(position, hpr);

6.2entity的屬性

        properties: {
            Latitude: 32.0642026,
            Longitude: 118.6265572,
            "車主": "張三",
            "車牌號": "鄂A 0000"
        },

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM