我很好奇你的观点,SpatiaLite和OpenLayers之间最有效的传输格式是什么。目前我正在开发一个基于SpatiaLite(SQLite的扩展)和OpenLayers的应用程序,并使用GeoJSON作为传输格式。地理数据库和OpenLayers之间的传输格式
我的过程: 1)由PHP脚本,quering DB使用SpatiaLite的功能AsGeoJSON,由此获得以GeoJSON格式化数据
2)使用PHP的打印()从PHP变量检索到的数据传送到JS变量:
$result = $db->query($query);
$r = '{"type": "FeatureCollection","features": [';
while($row = $result->fetchArray(SQLITE3_ASSOC))
{
$r .= '{"type":"Feature","properties":{}, "geometry":' . $row['geometry'] . '},';
}
$r .= ']}';
print'<script> CadastreBorder = ' . $r . '; </script>';
3)通过读取
var vectorLayer = new OpenLayers.Layer.Vector(name, {style: style, rendererOptions:
{zIndexing: true}});
var formatGeoJSON = new OpenLayers.Format.GeoJSON({});
vectorLayer.addFeatures(formatGeoJSON.read(CadastreBorder));
map.addLayer(vectorLayer);
创建在的OpenLayers矢量图层的功能有什么办法如何ACH即更高效和更好地实现相同的目标? 谢谢!
谢谢,这是有点优化。但是,我想知道是否有其他方式在GeoDB和API之间传输数据,总的来说可以这么说。 Anuway这也是有用的,所以谢谢你的回复! – 2013-04-01 19:31:22