当前位置: 首页 > wzjs >正文

西部数码怎么上传网站关键词挖掘网站

西部数码怎么上传网站,关键词挖掘网站,腾讯企点登陆,室内设计联盟官网论坛注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 图形要素包括属性信息和几何信息,在实际应用中,不仅需要修改样式信息,也需要修改图形几何信息。在OpenLayers中&…

注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key

图形要素包括属性信息和几何信息,在实际应用中,不仅需要修改样式信息,也需要修改图形几何信息。在OpenLayers中,一般采用鼠标交互方式修改图形坐标。在OpenLayers5中提供了ol.interaction.Modify交互式控件,可以结合选择要素控件ol.interaction.Select使用。

本节主要介绍加载图形交互编辑

1. 添加编辑几何图形

创建点、线、面几何图形并添加到地图中。

//绘制的几何图形要素
const pointFeature = new ol.Feature(new ol.geom.Point([11881771, 4588300]));
const lineFeature = new ol.Feature(new ol.geom.LineString([[11421771, 4288300], [12428781, 4288350]]));
const polygonFeature = new ol.Feature(new ol.geom.Polygon([[[11421771, 4228300], [11421771, 3588300], [11521771, 3588300], [11528771, 3688300], [12421771, 3988300]]]));//实例化一个矢量图层Vector作为绘制层
const source = new ol.source.Vector({features: [pointFeature, lineFeature, polygonFeature]
});
const vector = new ol.layer.Vector({source: source,style: new ol.style.Style({fill: new ol.style.Fill({color: 'rgba(255, 255, 255, 0.2)'}),stroke: new ol.style.Stroke({color: '#ff0000',width: 2}),image: new ol.style.Circle({radius: 7,fill: new ol.style.Fill({color: '#ff0000'})})})
});
//将绘制层添加到地图容器中
map.addLayer(vector);

2. 创建编辑控件

Modify控件中实现以下三个方法。

  • init:控件初始化
  • setEvents:设置事件,为当前选择的控件添加激活变更事件,在其事件处理函数中返回当前选择要素集的第一要素。
  • setActive:调用选择要素控件和交互式编辑控件setActive方法,控制控件是否激活。
//定义修改几何图形功能控件
const Modify = {init: function () {//初始化一个交互选择控件,并添加到地图容器中this.select = new ol.interaction.Select();map.addInteraction(this.select);//初始化一个交互编辑控件,并添加到地图容器中this.modify = new ol.interaction.Modify({//选中的要素features: this.select.getFeatures()});map.addInteraction(this.modify);//设置几何图形变更的处理this.setEvents();},setEvents: function () {//选中的要素const selectedFeatures = this.select.getFeatures();//添加选中要素变更事件this.select.on('change:active', function () {selectedFeatures.forEach(selectedFeatures.remove, selectedFeatures);});},setActive: function (active) {//激活选择要素控件this.select.setActive(active);//激活修改要素控件this.modify.setActive(active);}
};
//初始化几何图形修改控件
Modify.init();
//激活几何图形修改控件;
Modify.setActive(true);

3. 完整代码

其中libs文件夹下的包需要更换为自己下载的本地包或者引用在线资源。

<!DOCTYPE html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>图形交互编辑</title><meta charset="utf-8" /><link href="../libs/css/ol.css" rel="stylesheet" type="text/css" /><script src="../libs/js/ol-5.3.3.js" type="text/javascript"></script><style>* {padding: 0;margin: 0;font-size: 14px;font-family: '微软雅黑';}html,body {width: 100%;height: 100%;}#map {position: absolute;width: 100%;height: 100%;}.ol-mouse-position {padding: 5px;top: 10px;height: 40px;line-height: 40px;background: #060505ba;text-align: center;color: #fff;border-radius: 5px;}</style>
</head><body><div id="map" title="地图显示"></div>
</body></html><script>//==============================================================================////============================天地图服务参数简单介绍==============================////================================vec:矢量图层==================================////================================img:影像图层==================================////================================cva:注记图层==================================////======================其中:_c表示经纬度投影,_w表示球面墨卡托投影================////==============================================================================////地图投影坐标系const projection = ol.proj.get('EPSG:3857');const map = new ol.Map({//地图容器div的IDtarget: 'map',view: new ol.View({//地图初始中心点// center: [114.2905, 30.5607],center: [11421771, 4288300],projection: "EPSG:3857",minZoom: 2,zoom: 4})});const gaodeLayer = new ol.layer.Tile({source: new ol.source.XYZ({title: "高德",url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}"})})map.addLayer(gaodeLayer)//绘制的几何图形要素const pointFeature = new ol.Feature(new ol.geom.Point([11881771, 4588300]));const lineFeature = new ol.Feature(new ol.geom.LineString([[11421771, 4288300], [12428781, 4288350]]));const polygonFeature = new ol.Feature(new ol.geom.Polygon([[[11421771, 4228300], [11421771, 3588300], [11521771, 3588300], [11528771, 3688300], [12421771, 3988300]]]));//实例化一个矢量图层Vector作为绘制层const source = new ol.source.Vector({features: [pointFeature, lineFeature, polygonFeature]});const vector = new ol.layer.Vector({source: source,style: new ol.style.Style({fill: new ol.style.Fill({color: 'rgba(255, 255, 255, 0.2)'}),stroke: new ol.style.Stroke({color: '#ff0000',width: 2}),image: new ol.style.Circle({radius: 7,fill: new ol.style.Fill({color: '#ff0000'})})})});//将绘制层添加到地图容器中map.addLayer(vector);//定义修改几何图形功能控件const Modify = {init: function () {//初始化一个交互选择控件,并添加到地图容器中this.select = new ol.interaction.Select();map.addInteraction(this.select);//初始化一个交互编辑控件,并添加到地图容器中this.modify = new ol.interaction.Modify({//选中的要素features: this.select.getFeatures()});map.addInteraction(this.modify);//设置几何图形变更的处理this.setEvents();},setEvents: function () {//选中的要素const selectedFeatures = this.select.getFeatures();//添加选中要素变更事件this.select.on('change:active', function () {selectedFeatures.forEach(selectedFeatures.remove, selectedFeatures);});},setActive: function (active) {//激活选择要素控件this.select.setActive(active);//激活修改要素控件this.modify.setActive(active);}};//初始化几何图形修改控件Modify.init();//激活几何图形修改控件;Modify.setActive(true);</script>

OpenLayers示例数据下载,请回复关键字:ol数据

全国信息化工程师-GIS 应用水平考试资料,请回复关键字:GIS考试

【GIS之路】 已经接入了智能助手,欢迎关注,欢迎提问。

欢迎访问我的博客网站-长谈GIShttp://shanhaitalk.com

都看到这了,不要忘记点赞、收藏 + 关注

本号不定时更新有关 GIS开发 相关内容,欢迎关注 !

http://www.dtcms.com/wzjs/184228.html

相关文章:

  • 网站建设静态代码seo顾问是什么职业
  • 利用赞赏码做网站收款商丘网络推广哪家好
  • 中国建设银行企业网站营销网络推广方式有哪些
  • 做的网站百度不收录数据分析软件哪个最好用
  • 网站建站售后服务白杨seo博客
  • 网站部分版块显示正在建设云和数据培训机构怎么样
  • 南昌做网站多少钱深圳网络推广案例
  • 聊城网站建设培训班文山seo公司
  • 山东高端网站建设wang包头seo
  • wordpress添加产品产品列表福州seo按天付费
  • 星巴克网络营销案例分析seo关键词快速排名前三位
  • 北京外包做网站如何报价网站seo策划方案
  • 网站文章更新怎么做图片外链在线生成网址
  • 网站滚动图片代码seo外链平台热狗
  • 为什么有些公司却没有自己的网站推广普通话宣传标语
  • 怎么申请免费国内免费网站seo排名赚app
  • 网站建设策划书结束语app推广工作是做什么的
  • 成都建工雅安建设有限责任公司网站搜索引擎优化的核心本质
  • 网站有源代码如何做seo做网站推广
  • 2017年做哪个网站致富个人网站建站教程
  • 公众号 微网站开发线上销售平台如何推广
  • 中山做网站好的公司打广告
  • 晨光科技+网站建设企业建站
  • 企业宣传网站建设方案小米市场营销案例分析
  • 建网站需要哪些条件产品如何推广市场
  • 做商城网站需要什么资质品牌网络营销策划方案
  • 服务器2003系统如何建设网站丹东网站seo
  • 网站上的高清动态图怎么做的百度经验手机版官网
  • 做网站需要团队还是一个人关键词优化平台有哪些
  • 一个大型网站建设得多少钱打广告的免费软件