Files
iD/js/id/svg.js
John Firebaugh 5ea855e18d Replace Graph#fetch with Graph#childNodes
Having two kinds of Ways (fetched and non-fetched)
introduced some accidental complexity. This brings things
more in line with how parentWays/parentRelations work.

Fixes #73.
2013-01-25 15:10:44 -05:00

30 lines
808 B
JavaScript

iD.svg = {
RoundProjection: function (projection) {
return function (d) {
return iD.geo.roundCoords(projection(d));
};
},
PointTransform: function (projection) {
return function (entity) {
return 'translate(' + projection(entity.loc) + ')';
};
},
LineString: function (projection, graph) {
var cache = {};
return function (entity) {
if (cache[entity.id] !== undefined) {
return cache[entity.id];
}
if (entity.nodes.length === 0) {
return (cache[entity.id] = null);
}
return (cache[entity.id] =
'M' + graph.childNodes(entity).map(function (n) { return projection(n.loc); }).join('L'));
}
}
};