zoukankan      html  css  js  c++  java
  • 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]),
                    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]),
          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"
            },

     
  • 相关阅读:
    quartz 之misfire
    quartz 之job
    quartz 日志观察
    quartz集群原理2
    netty 之 GlobalEventExecutor
    redis 修改配置文件不起作用?
    Qto_MemberBaseQuantities
    Qto_PlateBaseQuantities
    Pset_BuildingElementProxyCommon
    matlab绘制函数(观察凹凸性)
  • 原文地址:https://www.cnblogs.com/xiaoguniang0204/p/11521569.html
Copyright © 2011-2022 走看看