L1 kml加载及设置

本段位加载kml,生成entity数据形式,并通过material属性来实现想要的线性。

一、加载kml的端口

Cesium.KmlDatasource.load();viewer.dataSources.add()

data Resource | String | Document | Blob A url, parsed KML document, or Blob containing binary KMZ data or a parsed KML document.
options Object An object with the following properties:

Name Type Default Description
camera Camera   The camera that is used for viewRefreshModes and sending camera properties to network links.
canvas Canvas   The canvas that is used for sending viewer properties to network links.
sourceUri String   optional Overrides the url to use for resolving relative links and other KML network features.
clampToGround Boolean false optional true if we want the geometry features (Polygons, LineStrings and LinearRings) clamped to the ground.
ellipsoid Ellipsoid Ellipsoid.WGS84 optional The global ellipsoid used for geographical calculations.

var promiseKml =new Cesium.KmlDataSource.load("地址",

     {
          camera: viewer.scene.camera,
          canvas: viewer.scene.canvas,     clampToGround:true//设置贴地
     });
二、本地的地址加载思路是使用input的file标签获取地址,暂时没有解决兼容性问题,待完善

三、加载kml并设置样式,目前采用的是entity加载方式,后面尝试primitive方式
promiseKml.then(function(kmlData) {
    viewer.dataSources.add(kmlData) ;
    var entities = kmlData.entities.values;

    for (let i = 0; i < entities.length; i++) {
        var entity = entities[i];
        //alert(entity.polyline);
        entity.polyline.show=true;
        entity.polyline.width=10;
        //1、发光线性
        entity.polyline.material= new Cesium.PolylineGlowMaterialProperty({
                            glowPower: 0.5,
                            color: Cesium.Color.BLUE
                        })
//         //2、箭头线
//         // entity.polyline.material=new Cesium.PolylineArrowMaterialProperty(Cesium.Color.RED)
//         // 3、轮廓线
//         // entity.polyline.material= new Cesium.PolylineOutlineMaterialProperty({
//         //     color: Cesium.Color.BLUE,
//         //     outlineWidth: 10,
//         //     outlineColor: Cesium.Color.RED
//         // })
//         //4、虚线,虚线部分显示出来,那么可以做成间隔线的样式
//         entity.polyline.material= new Cesium.PolylineDashMaterialProperty({
//             color:Cesium.Color.RED,
//             gapColor:Cesium.Color.TRANSPARENT,
//             dashLength:20,
//             dashPattern:255
//         })
//     }
}});
 

原文地址:https://www.cnblogs.com/xiaoguniang0204/p/11746579.html

时间: 2024-10-30 08:46:50

L1 kml加载及设置的相关文章

android项目 之 来电管家(7) ----- 加载用户设置并启监听用服务

因为我们用的是SharedPreferences来存储用户设置信息,那么在初次进入来电管家时,会有一些默认的设置,后续根据用户的设置,更新设置信息文件的内容. 打开应用程序,首先启动的是ActivityGroupDemo,并默认显示黑名单界面,这时,需要在ActivityGroupDemo.java中添加代码,判断用户是否是第一次进入该应用,如果是第一次,则写入默认的设置信息. 这里判断用户是否为第一次进入该应用程序,采用的思路为: 1)因为SharedPreferences会在应用程序目录下的

MFC 加载图标 设置窗口标题

加载图标 ◎ 1.m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); ◎ 2.m_hIcon = ::LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME)); SetIcon(m_hIcon, TRUE); // 设置大图标 SetIcon(m_hIcon, FALSE); // 设置小图标 3 设置窗口标题 SetWindowText(L"我的第一个MFC程序"

12、mybatis懒加载的设置

MyBatis的Lazy Loading可以实现延迟查询Bean里的嵌套成员类,控制lazy loading的<settings>属性有 lazyLoadingEnabled: lazy loading开关 aggressiveLazyLoading: 侵略性 lazy loading 开关 设置项 描述 允许值 默认值 lazyLoadingEnabled 全局性设置懒加载.如果设为‘false’,则所有相关联的都会被初始化加载. true | false 3.4.1后为false aggr

Jquery chosen动态设置值 select Ajax动态加载数据 设置chosen和获取他们选中的值

在做一个编辑对话框时,要对里面带有select option的操作.主要是想动态加载option和对option的选中.但是由于项目中使用了jquery里的chosen()方法,怎么也无法实现效果.原码如下: Java代码   <select id="viewOLanguage" data-rel="chosen"> <option value="zh">简体中文(简体中文 Chinese)</option>

halcon 图片加载和设置XY轴滑动块的先后顺序

//必须先加载图片,然后执行 hWndControl.setGUICompRangeX( new int[]{ XTrackBar.Minimum, XTrackBar.Maximum}, XTrackBar.Value ); hWndControl.setGUICompRangeY( new int[]{ YTrackBar.Minimum, YTrackBar.Maximum}, YTrackBar.Maximum-YTrackBar.Value); private void SmartWi

加载数据 设置图片圆角方法

[_iconView sd_setImageWithURL:[NSURL URLWithString:item.image_list] placeholderImage:[UIImage imageNamed:@"defaultUserIcon"] options:SDWebImageCacheMemoryOnly completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageUR

xib文件加载后设置frame无效问题

这个问题在项目中遇到过多次,原因是没有在正确的位置设置frame 应该在 -(void)viewDidLayoutSubviews 中去设置就没问题了

关于 Mybatis 设置懒加载无效的问题

看了 mybatis 的教程,讲到关于mybatis 的懒加载的设置: 只需要在 mybatis 的配置文件中设置两个属性就可以了: <settings> <!-- 打开延迟加载的开关 --> <setting name="lazyLoadingEnabled" value="true" /> <!-- 将积极加载改为消息加载即按需加载 --> <setting name="aggressiveLazy

android Listview分批加载+自动加载(附源码下载)

直接上代码,代码有注释: public class TestForListviewActivity extends Activity implements OnScrollListener { private ListView mListview = null; private View mFooterView; private PaginationAdapter mAdapter; private Handler handler=new Handler(); private boolean i