我想知道如何以及如果我可以将标准HTML元素(div,button)添加到地图上的一组特定坐标?
例如,我有一组坐标,我想附加一个自定义气球通知给他们
带有自定义样式元素的Google地图附加到一组坐标http://i45.tinypic.com/dfc7sj.png
当我从坐标平移时,元素应该消失,当我平移回它们时,元素应该重新出现.
是否可以使用Google地图执行此操作?
我在这里完全不解.我有一个对象列表,每个对象包含一个位置.我使用google.maps.geocoder查找此位置,然后我在地图上放置了该位置的标记.
但由于某种原因,只出现一个标记.我想这与我在这里的其他线程中看到的闭包问题有关,但我似乎无法将解决方案应用于我所拥有的.
我的代码如下:
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
map.fitBounds(bounds);
for (var item in list) {
var geocoder = new google.maps.Geocoder();
var geoOptions = {
address: item.location,
bounds: bounds,
region: "NO"
};
geocoder.geocode(geoOptions, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
addMarker(map, item, results[0].geometry.location);
} else {
console.log("Geocode failed " + status);
}
});
}
function addMarker(map, item, location) {
var marker = new google.maps.Marker({ map : map, position : location});
marker.setTitle(item.title);
var infowindow = new google.maps.InfoWindow( {
content : …
Run Code Online (Sandbox Code Playgroud) 我将标记放入群集中:
var markerClusterer = new MarkerClusterer(map, markers, {
zoomOnClick : false,
maxZoom : 13,
gridSize : 100
});
Run Code Online (Sandbox Code Playgroud)
我有15个标记.其中10个在地图中成簇.如何确定标记是否在群集中.
var clusteredMarkers = markerClusterer.getTotalMarkers();
for(i = 0; i < clusteredMarkers.length; i++) {
if(isInCluster((clusteredMarkers[i])) {
clusteredMarkers[i].infobox.close();
}
}
Run Code Online (Sandbox Code Playgroud)
如何定义像isInCluster(marker)这样的函数,信息框只在标记中打开,不在任何集群中(即5个信息框必须可见)?
我有一张地图,上面有两种不同类型的标记:照片和博客文章.我想使用聚类系统,最好是MarkerClusterer.有没有办法动态更改标记图标,换句话说,取决于群集内的标记(照片或帖子)类型?例如,如果群集只包含照片,我想显示某种相机图标,如果群集中只有帖子,我可能想要显示一个字母.如果所有类型的标记都在集群内,我想使用某种组合图标.
我可以以某种方式插入此检查,我在MarkerStyleOptions中分配图标的URL 吗?
奖励还将是显示图标中每种类型的标记量,即两个数字.
有没有人看到一种方法来做到这一点,而无需更改源代码?
我想最简单的选择是将每个标记类型保持在一个单独的簇中......
我正在使用Android Google地图v2 API并将其设置为在长按时添加标记.我需要一种方法来保存这些标记,并在应用程序再次恢复时重新加载它们.最好的方法是什么?请帮忙
目前我添加标记如下:
map.addMarker(new MarkerOptions().position(latlonpoint)
.icon(bitmapDescriptor).title(latlonpoint.toString()));
Run Code Online (Sandbox Code Playgroud) android google-maps savestate google-maps-markers android-maps
所以我正在努力学习如何制作谷歌地图.我对javascript的了解很少,但我想在这里学习.
我在网上引用了一个代码,并且我已经明白了如何添加位置,标记和信息,但我正在试图找出如何为每个标记添加多个自定义图标.
谢谢您的帮助.
function initialize() {
//add map, the type of map
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 6,
center: new google.maps.LatLng(37.7749295, -122.4194155),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
//add locations
var locations = [
['San Francisco: Power Outage', 37.7749295, -122.4194155],
['Sausalito', 37.8590937, -122.4852507],
['Sacramento', 38.5815719, -121.4943996],
['Soledad', 36.424687, -121.3263187],
['Shingletown', 40.4923784, -121.8891586]
];
//declare marker call it 'i'
var marker, i;
//declare infowindow
var infowindow = new google.maps.InfoWindow();
//add marker to each locations
for (i = 0; i < locations.length; i++) …
Run Code Online (Sandbox Code Playgroud) javascript google-maps google-maps-api-3 google-maps-markers
我想从地图外部将对象拖到Google Map(API V3)中.经过一些研究,我找到了这个非常有用的帖子,我试着让它适应我的项目.
主要思想是在地图上拖动.png图像,当鼠标按钮向下时,获取实际坐标并在该纬度/ lng处放置标记.
但是我注意到拖动图像的点与放置标记的点之间存在差异.无论缩放级别如何,上面链接的样本的差异大约为10/15像素.在最大变焦时,它不是很重要,但是你取消的越多,差距越重要.
差距的插图:
(我们距离想要的地方100公里/ 60英里...)
那么,为什么会有这样的差距?在我上面链接的样本中,差距不太重要,但它也存在.我的浏览器控制台没有错误,它似乎不是一个棘手的CSS问题.
有人知道如何纠正这个问题吗?
谢谢
google-maps drag-and-drop latitude-longitude google-maps-api-3 google-maps-markers
我正在尝试制作一个带有自动图标闪烁的GMSMarker,并带有衰减的动画不透明度.动画应重复几次,但事实并非如此,只是执行一次转换然后停止.这仅在动画不透明度属性时发生,它在动画其他属性时工作正常.
这是代码:
GMSMarkerLayer* layer = marker.layer;
CABasicAnimation *blink = [CABasicAnimation animationWithKeyPath:@"opacity"];
blink.fromValue = [NSNumber numberWithFloat:0.0];
blink.toValue = [NSNumber numberWithFloat:1.0];
blink.duration = 1.0;
blink.autoreverses = YES;
blink.repeatCount = 4;
[layer addAnimation:blink forKey:@"blinkmarker"];
Run Code Online (Sandbox Code Playgroud)
文档说我应该能够设置不透明度的动画,因为它是GMSMarkerLayer允许我们使用的属性之一.
我做错了什么或者是我刚遇到的已知错误?
iphone google-maps google-maps-markers ios google-maps-sdk-ios
我在Google Maps API中添加单个标记时遇到问题.我搜索了很多像以下链接,在谷歌地图方向api V3中更改个别标记.但我无法在我的代码上实现相同的功能.在suppressMarkers: true
我的帮助下,我能够阻止默认标记.现在只显示根方向.现在我该如何为起点和终点添加制造商.以下是我的代码.
function GoogleMap_selected(){
var lattitude_value= document.getElementById('slectedLat').value;
var longitude_value= document.getElementById('slectedLon').value;
var from = new google.maps.LatLng(mylatitude, mylongitude);
var to = new google.maps.LatLng(lattitude_value, longitude_value);
var directionsService = new google.maps.DirectionsService();
var directionsRequest = {
origin: from,
destination: to,
travelMode: google.maps.DirectionsTravelMode.DRIVING,
unitSystem: google.maps.UnitSystem.METRIC
};
this.initialize = function(){
var map = showMap_selected();
directionsService.route(
directionsRequest,
function(response, status)
{
if (status == google.maps.DirectionsStatus.OK)
{
new google.maps.DirectionsRenderer({
map: map,
directions: response,
suppressMarkers: true
});
}
else
{
alert("Unable to retrive route"); …
Run Code Online (Sandbox Code Playgroud) javascript google-maps google-maps-api-3 google-maps-markers
一组用户地址
array:5 [?
0 => array:2 [?
"name" => " Admin"
"address" => "111 Park AveFloor 4 New York, NY"
]
1 => array:2 [?
"name" => "User A"
"address" => "12 Main Street Cambridge, MA"
]
2 => array:2 [?
"name" => "Apple HQ"
"address" => "1 Infinite Loop Cupertino, California"
]
3 => array:2 [?
"name" => "Google MA"
"address" => "355 Main St Cambridge, MA"
]
4 => array:2 [?
"name" => "site HQ"
"address" => …
Run Code Online (Sandbox Code Playgroud) google-maps ×8
javascript ×6
android ×1
android-maps ×1
ios ×1
iphone ×1
jquery ×1
overlay ×1
php ×1
savestate ×1