谷歌地图动画多个符号
Google Maps animating multiple symbols
我只是试图改变谷歌的animateCircle()的版本,这样它会动画多个图标而不是只有一个,但它似乎不工作的图标除了第一个。什么好主意吗?
paths是一个路径数组,其中还包含有关该路径的其他信息。
var icons = [{ icon : lineSymbol, offset : "100%"},
{ icon : lineSymbol, offset : "90%"}]
function animateArrow() {
var count = 0;
offsetId = window.setInterval(function() {
count = (count + 1) % 200;
var icons = paths.path.get('icons');
for (var i = 0; i < icons.length; i++) {
icons[i].offset = (count / 2) + '%';
}
paths.path.set('icons', icons);
}, 20);
}
明白了。注意:这里没有显示path
。percentSpaced
应根据您希望的间距进行更改,即符号之间的间距为20%,则为20。
function animateArrow(path) {
var count = 0, icons = new Array();
var percentSpaced = 20;
var intervalTime = 20; // miliseconds
var lineSymbol = {
path : google.maps.SymbolPath.FORWARD_CLOSED_ARROW,
strokeColor : "#000000",
strokeOpacity : .95,
strokeWeight : 10,
fillColor : "#FFFFFF",
fillOpacity : .7
};
for (var i = 0; i < 100/percentSpaced; i++) {
icons.push({ icon : lineSymbol });
}
path.set("icons", icons);
offsetId = window.setInterval(function() {
count = (count + 1) % 200;
var icons = paths.path.get('icons');
for (var i = 0; i < icons.length; i++) {
icons[i].offset = ((count / 2) + (i * percentSpaced)) % 100 + '%';
}
path.set("icons", icons);
}, intervalTime);
}
有两件事你必须考虑:
1)计数设置假设只有1个图标。(因此(i * percentSpaced)
)
2)如果图标的百分比超过100%,则应该重新开始。(因此末尾是% 100
)
相关文章:
- 如何设置html元素填充的动画
- 如何使用动画实现纸张推车
- 如何在生成下载文件时显示加载动画
- 剑道网格jQuery动画()问题
- EaseJS拖放;放下(动画CC)电影剪辑的鼠标坐标
- jQuery Lazy加载动画滚动
- jquery动画可以通过编程链接吗
- Javascript将数学动画化
- 动画.CSS重播
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- 如何使用jQuery在动画中期加速动画
- 在slitify中制作二级项目符号的动画
- 在多条测地线折线上为符号添加动画效果
- 使用JavaScript/HTML符号制作基本动画
- 自定义符号动画不遵循多段线路径
- 如何创建项目符号动画?(射击游戏)
- 谷歌地图动画多个符号
- 动画符号-谷歌地图API
- 谷歌地图动画符号(在到达路径的目的地后停止图标)
- 停止动画符号在折线-谷歌地图