我正在构建一个应用程序,该应用程序将在地图上绘制标记 - 并让警报环从标记中平滑地动画化。
标记将具有以下属性
- 尺寸
- x坐标
- y坐标
- 报警等级
如果警报等级低 - 我希望戒指的跳动非常缓慢,如果它的高跳动更快并且可能会走得更远。
这将在某个时候在约会应用程序中使用,因此警报等级将代表人们迫切希望找到另一个人约会。如果地图落在用户当前位置并且紧急用户的戒指刚刚进入视野,那就太好了。
这是最新的小提琴,http://jsfiddle.net/NYEaX/367/
这就是我的目标 - http://demo.joostkiens.com/het-parool-4g/
function makeRings() {
var datapoints = circleGroup.selectAll("circle");
var radius = 1;
function myTransition(circleData){
var transition = d3.select(this).transition();
speedLineGroup.append("circle")
.attr({
"class": "ring",
"fill":"red",
"stroke":"red",
"cx": circleData.xcoord,
"cy": circleData.ycoord,
"r":radius,
"opacity": 0.4,
"fill-opacity":0.1
})
.transition()
.duration(function(){
return 100*circleData.alarmLevel;
})
.attr("r", radius + 100 )
.attr("opacity", 0)
.remove();
transition.each('end', myTransition);
}
datapoints.each(myTransition);
}