gpt4 book ai didi

javascript - 有效的 geoJson 未填充 Google map 标记

转载 作者:行者123 更新时间:2023-12-03 11:17:25 24 4
gpt4 key购买 nike

与我的 geoJson 关联的标记未填充在我的 map 上。如果我在 http://geojsonlint.com/ 上运行我的 geoJSON一切正常。如果我将 geoJSON 与 google map dev api 'https://storage.googleapis.com/maps-devrel/google.json' 的示例交换,它们的叠加层就会很好地填充在我的 map 上。

下面我运行 http://localhost:3009/murals.json 作为 loadGeoJson 的参数,我也尝试运行 test.json 来自本地文件。

我的 map .js

function initialize() {
var myLatlng = new google.maps.LatLng(40.0172679,-105.2839094);
var myOptions = {
zoom: 16,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(
document.getElementById('map'), myOptions
);
map.data.loadGeoJson('http://localhost:3009/murals.json');
};

google.maps.event.addDomListener(window, "load", initialize());

我的 Controller (毫无疑问可以重构,但输出格式正确的 geoJSON)

def index
@murals = Mural.all
muralHash = []
@geojson = { type: "GeometryCollection",
geometries: muralHash
}
@murals.each do |mural, myHash = {:type => nil,:coordinates => nil}|
myHash["type"] = 'Point'
myHash["coordinates"] = [mural.longitude, mural.latitude]

muralHash << myHash
end
respond_to do |format|
format.html
format.json { render json: @geojson }
end
end

geoJSON

    { "type":"GeometryCollection",
"geometries":[
{
"type":"Point",
"coordinates":[-105.287685950293,40.0124034482671]
},
{
"type":"Point",
"coordinates":[-105.196297724738,39.9935339839196]
},
{
"type":"Point",
"coordinates":[-105.283136923804,40.0162490232761]
}
]
}

最佳答案

JSON 无效(与 map API 期望的格式相关的有效),这可以工作:

{
"type":"FeatureCollection",
"features":[
{
"type":"Feature",
"geometry":{
"type":"Point",
"coordinates":[-105.287685950293,40.0124034482671]
}
},
{
"type":"Feature",
"geometry":{
"type":"Point",
"coordinates":[-105.196297724738,39.9935339839196]
}
},
{
"type":"Feature",
"geometry":{
"type":"Point",
"coordinates":[-105.283136923804,40.0162490232761]
}
}
]
}

关于javascript - 有效的 geoJson 未填充 Google map 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27278541/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com