热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

geoserver三维_cesium结合geoserver利用WFS服务实现图层新增(附源码下载)

部分核心代码:绘制geojson图层样式vargeoJsonStyle{stroke:Cesium.Color.YELLOW,strokeWidth:3,fill:C

部分核心代码:

```

//绘制geojson图层样式

var geoJsonStyle = {

stroke: Cesium.Color.YELLOW,

strokeWidth: 3,

fill: Cesium.Color.YELLOW.withAlpha(0.1)

};

var geoserverUrl = 'http://localhost:8080/geoserver/WebGIS';

var image_Source = new Cesium.UrlTemplateImageryProvider({

//url: 'http://mt0.google.cn/vt/lyrs=t,r&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}',

//url: 'https://server.arcgisonline.com/arcgis/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',

url: "http://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}",

//tilingScheme : new Cesium.GeographicTilingScheme(),

credit: ''

});

var viewer = new Cesium.Viewer('map', {

geocoder: false,

homeButton: false,

sceneModePicker: false,

fullscreenButton: false,

vrButton: false,

baseLayerPicker: false,

infoBox: false,

selectionIndicator: false,

animation: false,

timeline: false,

shouldAnimate: true,

navigationHelpButton: false,

navigationInstructionsInitiallyVisible: false,

imageryProvider: image_Source

});

//加载geoserver wms服务

var wms = new Cesium.WebMapServiceImageryProvider({

url: geoserverUrl+'/wms',

layers: 'WebGIS:testLayer',

parameters: {

service : 'WMS',

format: 'image/png',

transparent: true,

}

});

viewer.imageryLayers.addImageryProvider(wms);

viewer._cesiumWidget._creditContainer.style.display = "none";

viewer.scene.globe.enableLighting = false;

//viewer.scene.globe.depthTestAgainstTerrain = true;

viewer.scene.globe.showGroundAtmosphere = false;

viewer.camera.flyTo({

destination : Cesium.Cartesian3.fromDegrees(113.90271877, 22.95186415,30000.0)

});

var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);

var ellipsoid = viewer.scene.globe.ellipsoid;

handler.setInputAction(function (movement) {

//通过指定的椭球或者地图对应的坐标系,将鼠标的二维坐标转换为对应椭球体三维坐标

cartesian = viewer.camera.pickEllipsoid(movement.position, ellipsoid);

if (cartesian) {

//将笛卡尔坐标转换为地理坐标

var cartographic = ellipsoid.cartesianToCartographic(cartesian);

//将弧度转为度的十进制度表示

var longitudeString = Cesium.Math.toDegrees(cartographic.longitude);

var latitudeString = Cesium.Math.toDegrees(cartographic.latitude);

var point = longitudeString + ',' + latitudeString;

queryByPoint(point,'testLayer',callbackLastQueryWFSService);

}

}, Cesium.ScreenSpaceEventType.LEFT_CLICK);

var drawTool = new DrawTool({

viewer: viewer,

hasEdit: false

});

//绘制矩形

$("#rect_btn").click(function(){

//clearMap()

if (!drawTool) return;

drawTool.startDraw({

type: "rectangle",

style: {

heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,

//material:Cesium.Color.WHITE

material:Cesium.Color.fromRgba(0x67ADDFFF)

},

success: function (evt) {



推荐阅读
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 深入解析 Lifecycle 的实现原理
    本文将详细介绍 Android Jetpack 中 Lifecycle 组件的实现原理,帮助开发者更好地理解和使用 Lifecycle,避免常见的内存泄漏问题。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • Ihavetwomethodsofgeneratingmdistinctrandomnumbersintherange[0..n-1]我有两种方法在范围[0.n-1]中生 ... [详细]
  • Ext JS MVC系列一:环境搭建与框架概览
    本文主要介绍了如何在项目中使用Ext JS 4作为前端框架,并详细讲解了Ext JS 4的MVC开发模式。文章将从项目目录结构、相关CSS和JS文件的引用以及MVC框架的整体认识三个方面进行总结。 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
  • 本文介绍了如何在AX2012中通过自定义查询在数据网格视图中显示所有记录的方法。 ... [详细]
  • 文章目录Golang定时器Timer和Tickertime.Timertime.NewTimer()实例time.AfterFunctime.Tickertime.NewTicke ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • XAMPP 遇到 404 错误:无法找到请求的对象
    在使用 XAMPP 时遇到 404 错误,表示请求的对象未找到。通过详细分析发现,该问题可能由以下原因引起:1. `httpd-vhosts.conf` 文件中的配置路径错误;2. `public` 目录下缺少 `.htaccess` 文件。建议检查并修正这些配置,以确保服务器能够正确识别和访问所需的文件路径。 ... [详细]
  • 在尝试对 QQmlPropertyMap 类进行测试驱动开发时,发现其派生类中无法正常调用槽函数或 Q_INVOKABLE 方法。这可能是由于 QQmlPropertyMap 的内部实现机制导致的,需要进一步研究以找到解决方案。 ... [详细]
  • 在《Cocos2d-x学习笔记:基础概念解析与内存管理机制深入探讨》中,详细介绍了Cocos2d-x的基础概念,并深入分析了其内存管理机制。特别是针对Boost库引入的智能指针管理方法进行了详细的讲解,例如在处理鱼的运动过程中,可以通过编写自定义函数来动态计算角度变化,利用CallFunc回调机制实现高效的游戏逻辑控制。此外,文章还探讨了如何通过智能指针优化资源管理和避免内存泄漏,为开发者提供了实用的编程技巧和最佳实践。 ... [详细]
  • 在iOS开发中,`UIScrollView` 的滚动条显示与隐藏由两个关键属性控制,默认情况下,滚动条会在滚动时短暂显示,然后自动消失。通过设置 `showsHorizontalScrollIndicator` 和 `showsVerticalScrollIndicator` 属性为 `YES` 或 `NO`,可以强制始终显示或隐藏水平和垂直滚动条。此外,还可以通过 `indicatorStyle` 属性调整滚动条的样式,以适应不同的界面需求。这些属性的灵活运用能够显著提升用户体验。 ... [详细]
author-avatar
合思优子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有