OpenLayers-Geometry格式转换-程序员宅基地

技术标签: ViewUI  javascript  

Geometry有多种格式,例如WKT, GML, KML等格式。OpenLayers提供Geometry格式的转换方法,可以实现不同格式的Geometry的转换。

Geometry格式转换类位于OpenLayers.Format命名空间下。本文以WKT--> GML的转换来说明OpenLayers Geometry格式转换方法的使用。

1. 定义WKT Geometry

var wkt  = "POLYGON((6.027164 49.524078,6.088064 49.680508,5.948726 49.772232,5.941587 49.91943,6.03742 50.064381,6.147439 50.130783,6.211109 50.166946,6.312177 50.134426,6.340263 49.998951,6.525142 49.858585,6.734586 49.815399,6.715019 49.685902,6.603117 49.621159,6.636707 49.462303,6.57162 49.490456,6.315996 49.495625,6.02716449.524078))”;

2. 创建WKT Format对象

var wkt_c = new OpenLayers.Format.WKT();

3. 利用wkt_c读入wkt数据,并转换为OpenLayers的Geometry对象

var geometry = new wkt_c.read(wkt);

4. 创建GMK Format对象

var gml_c = new OpenLayers.Format.GML();

5. 利用gml_c对象将geometry写为gml格式

var gml = new gml_c.write(geometry);

 

下面是一个OpenLayers格式转换器代码

复制代码
 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 2 <HTML>  3 <HEAD>  4 <TITLE> OpenLayers: Convert Data Format </TITLE>  5 <META NAME="Generator" CONTENT="EditPlus">  6 <META NAME="Author" CONTENT="">  7 <META NAME="Keywords" CONTENT="">  8 <META NAME="Description" CONTENT="">  9 <script src="./OpenLayers-2.10/lib/OpenLayers.js"></script> 10 <script type="text/javascript"> 11 function onConvertClick() 12  { 13 var inp = document.getElementById("input"); 14 var out = document.getElementById("output"); 15 var selector = document.getElementById("format"); 16 var format = selector.value; 17 18 var wkt = inp.value; 19 var wkt_c = new OpenLayers.Format.WKT(); 20 var geometry = wkt_c.read(wkt); 21 22 var convertor = createConvertor(format); 23 var text = convertor.write(geometry); 24 25  out.value = text; 26  } 27 28 function createConvertor(type) 29  { 30 var convertor = null; 31 switch(type) 32  { 33 case "GML": 34  convertor = new OpenLayers.Format.GML(); 35 break; 36 case "KML": 37  convertor = new OpenLayers.Format.KML(); 38 break; 39 case "GeoJSON": 40  convertor = new OpenLayers.Format.GeoJSON(); 41 break; 42  } 43 return convertor; 44  } 45 </script> 46 </HEAD> 47 48 <BODY> 49 <table> 50 <tr> 51 <td> 52 <SELECT NAME="format" id="format"> 53 <OPTION value="GML">GML</OPTION

转载于:https://www.cnblogs.com/hanhuibing/articles/4177622.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/a18826265589/article/details/101918769

智能推荐

基于Matlab实现PSO算法(附上多个案例源码)_pso算法 matlab-程序员宅基地

本文介绍了如何使用Matlab实现PSO算法进行优化,并提供了多个仿真源码和数据。其中包括基于PSO和DWT的信号去噪的Matlab仿真。

VC++获取电脑的各个磁盘盘符及容量信息(附源码)_c++ 获取各个磁盘盘符-程序员宅基地

文章浏览阅读1w次,点赞43次,收藏36次。本文详细介绍如何调用系统API函数来获取各个磁盘及容量信息。_c++ 获取各个磁盘盘符

Freemark 例子-程序员宅基地

文章浏览阅读1.1k次。最近在学习SSH+Freemark+Jquery搭建网上商城的例子,分享下学习Freemark的例子吧!科普知识 大牛可以忽略 给初学者看看的。 创建如下类package freemark;import java.io.File; import java.io.OutputSt

openssl 交叉编译_openssl交叉编译-程序员宅基地

文章浏览阅读1w次,点赞5次,收藏33次。交叉编译openssl需要交叉编译aarch64版本的openssl,需要在第一个参数位置指定目标架构,–cross-compile-prefix指定了命令前缀,当然这些命令的路径需要在PATH中设置。 ./Configure linux-aarch64 --cross-compile-prefix=aarch64-himix100-linux- --prefix=/data/sqhao/work/openssl_instasll && make && make inst_openssl交叉编译

基于接收信号强度(RSS)的室内定位/无线传感器网络定位——极大似然估计ML/最小二乘估计WLS_rss定位特点-程序员宅基地

文章浏览阅读4.8k次,点赞14次,收藏52次。基于接收信号强度(RSS)的室内定位/无线传感器网络定位——极大似然估计ML/最小二乘估计WLSRSS室内定位极大似然估计ML室内定位加权最小二乘WLS室内定位_rss定位特点

卡诺模型案例分析_AMOS案例分析 | 结构方程模型(二)-程序员宅基地

文章浏览阅读5.3k次。使用结构方程的方法进行模型的验证1、 替换缺失值在读取数据文件之前,对数据的完整性问题做适当处理。利用SPSS进行数据缺失值的处理。操作过程:转换→替换缺失值输出结果:形成新的数据集。从下表中可以看出,LXRZ1_1和GXRZ4_1有缺失值。从新的数据集中看出两个缺失值替补均为4。结果变量结果变量替换的缺失值数非缺失值的个案编号有效个案数创建函数第一个最后一个1LXRZ1_1111691..._spss卡诺模型

随便推点

python 召回率_召回率与精确率-程序员宅基地

文章浏览阅读2k次。工业界往往会根据实际的业务场景拟定相应的业务指标。本文旨在一起学习比较经典的三大类评价指标,其中第一、二类主要用于分类场景、第三类主要用于回归预测场景,基本思路是从概念公式,到优缺点,再到具体应用(分类问题,本文以二分类为例)。1.准确率P、召回率R、F1 值定义 准确率(Precision):P=TP/(TP+FP)。通俗地讲,就是预测正确的正例数据占预测为正例数据的比例。召回率(Recall)..._recall python

Tomcat Session集群---会话绑定-程序员宅基地

文章浏览阅读464次,点赞9次,收藏10次。7-1安装Nginx7-2和7-3安装Tomcat。

UML建模的要点总结_uml建模考点-程序员宅基地

文章浏览阅读621次。UML建模的要点总结 2009-02-26 作者:张邀月 来源:网络 预备知识:一、UML的特性与发展现状UML是一种Language(语言)UML是一种Modeling(建模)LanguageUML是Unified(统一)Modeling Language1、已进入全面应用阶段的事实标准_uml建模考点

sqlmap 指定 数据库类型_注入工具 -- sqlmap(注入参数)-程序员宅基地

文章浏览阅读6.5k次,点赞2次,收藏4次。任何关系走到最后,不过相识一场,有心者有所累,无心者无所谓,情出自愿,事过无悔,不负遇见,不谈亏欠。。。一、指定数据库类型 --dbmshttp://192.168.1.121/sqli/Less-1/?id=1&&name=2 --dbms mysql --dbs二、指定操作系统 --oshttp://192.168.1.121/sqli/Less-1/?id=1&&a..._sqlmap指定数据库类型

MT6261芯片设计最新参考资料分享_mt6261ma-程序员宅基地

文章浏览阅读2.4k次。MT6261 design noteChange listDesign NoticeV0.2 to V0.3-修改GPRS射频部分。为不同的PA添加2层设计通知添加RX匹配布局指南MT6261 RFMD 7198设计说明。-增加USB部分。添加usb-if测试项-修改音频和语音部分。加入K类及AB类共同布局设计通知书-增加SFI/EMI部分。增加用于pSRAM的VIO 18..._mt6261ma

The 2022 ICPC Asia Regionals Online Contest (I)-D题题解(DFS暴搜+剪枝+打表去重+二分)_杭州2022icpc题解-程序员宅基地

文章浏览阅读1.4k次,点赞3次,收藏3次。这次比赛很好,题也很好,就是下午人不太清醒,没做出来太菜了,回去才写出来的。_杭州2022icpc题解

推荐文章

热门文章

相关标签