GeoJSON是一种对各种地理数据结构进行编码的格式,基于Javascript对象表示法,那geojson怎么快速获取xy?下面来我们就来给大家讲解一下geojson快速获取xy的方法。
就是这样的:
{ "type": "FeatureCollection" , "features": [ { "type": "Feature" , "properties": {} , "geometry": { "type": "Polygon" , "coordinates": [ [ [ 91.373291015625, 38.66835610151506 ], [ 89.769287109375, 37.76202988573211 ], [ 93.2958984375, 36.90597988519294 ], [ 94.163818359375, 37.90953361677018 ], [ 93.636474609375, 39.2407625100131 ], [ 91.373291015625, 38.66835610151506 ] ] ] } } ] }
这就是一个简单的geojson文件。如果我们做文件上传,需要取到其中的coordinates,也就是每一个坐标,怎么做呢:(仅展示核心代码)
//选择文件 $("#displayfile") .change(function (that) { var val = $(this) .val(); console.log($("input[type='file']")); if (val.split(".")[1] == 'json' || val.split(".")[1] == 'geojson') { $("#jiaInput") .val($(this) .val()) } else { alert("请选择geojson文件格式"); } var str = ""; var obj = document.getElementById("displayfile"); var length = obj.files.length; var reader = new FileReader(); //新建一个FileReader reader.readAsText(obj.files[0], "UTF-8"); //读取文件 reader.onload = function (evt) { //读取完文件之后会回来这里 var fileString = evt.target.result; // 读取文件内容 console.log(JSON.parse(fileString)) var fileJson = JSON.parse(fileString); console.log(fileJson.features[0].geometry.coordinates[0][0]) //取到第一个json坐标点 } for (var i = 0; i < length; i++) { $(".FileArea") .html("");; var temp = obj.files[i].name; str += " " + temp + " "; } $(".FileArea") .append(str); })
这样就可以取到坐标点了,如果想取到每一个坐标点。进行一次遍历就好了。
GeoJSON 是什么格式?
GeoJSON 是一种对地理数据结构进行编码的格式。它只是一个采用上述 JSON 格式的用于描述地理信息的格式。它的语法和 JSON 是一样的,只是对各名称做了规范。
JSON(JavaScript Object Notation) 是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读。尽管 JSON 是 Javascript 的一个子集,但 JSON 是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。
GeoJSON对象可能有任何数目成员(名/值对)。
GeoJSON对象必须有一个名字为"type"的成员。这个成员的值是由GeoJSON对象的类型所确定的字符串。
type成员的值必须是下面之一:"Point", "MultiPoint", "LineString", "MultiLineString", "Polygon", "MultiPolygon", "GeometryCollection", "Feature", 或者 "FeatureCollection"。
GeoJSON对象可能有一个可选的"crs"成员,它的值必须是一个坐标参考系统的对象。
GeoJSON对象可能有一个"bbox"成员,它的值必须是边界框数组。
GeoJSON支持点线面,是开发人员很好的开发工具,如果想获取xy,只要按照以上的方法做就行,如果想取到每一个坐标点。进行一次遍历就好了。最后大家如果想要了解更多json相关知识,敬请关注奇Q工具网。
推荐阅读: