Use context.asset() to generate path to Mapillary image sprite

This commit is contained in:
Bryan Housel
2017-06-09 10:53:48 -04:00
parent 274552205d
commit 70d0a68c6d
2 changed files with 8 additions and 5 deletions
+6 -4
View File
@@ -21,6 +21,7 @@ var apibase = 'https://a.mapillary.com/v3/',
mapillaryClicks,
mapillaryImage,
mapillarySignDefs,
mapillarySignSprite,
mapillaryViewer;
@@ -124,10 +125,10 @@ function loadNextTilePage(which, currZoom, url, tile) {
if (linkHeader) {
var pagination = parsePagination(xhr.getResponseHeader('Link'));
if (pagination.next) {
cache.nextURL[tile.id] = pagination.next;
cache.nextURL[tile.id] = pagination.next;
}
}
return JSON.parse(xhr.responseText); })
.get(function(err, data) {
cache.loaded[id] = true;
@@ -267,11 +268,11 @@ export default {
signHTML: function(d) {
if (!mapillarySignDefs) return;
if (!mapillarySignDefs || !mapillarySignSprite) return;
var position = mapillarySignDefs[d.value];
if (!position) return '<div></div>';
var iconStyle = [
'background-image:url(img/traffic-signs/traffic-signs.png)',
'background-image:url(' + mapillarySignSprite + ')',
'background-repeat:no-repeat',
'height:' + position.height + 'px',
'width:' + position.width + 'px',
@@ -295,6 +296,7 @@ export default {
// load traffic sign defs
if (!mapillarySignDefs) {
mapillarySignSprite = context.asset('img/traffic-signs/traffic-signs.png');
mapillarySignDefs = {};
d3.json(context.asset('img/traffic-signs/traffic-signs.json'), function(err, data) {
if (err) return;
+2 -1
View File
@@ -383,7 +383,8 @@ describe('iD.serviceMapillary', function() {
value: 'regulatory--maximum-speed-limit-65--g1',
};
expect(mapillary.signHTML(signdata)).to.eql('<div style="background-image:url(img/traffic-signs/traffic-signs.png);background-repeat:no-repeat;height:24px;width:24px;background-position-x:-576px;background-position-y:-528px"></div>');
var sprite = context.asset('img/traffic-signs/traffic-signs.png');
expect(mapillary.signHTML(signdata)).to.eql('<div style="background-image:url(' + sprite + ');background-repeat:no-repeat;height:24px;width:24px;background-position-x:-576px;background-position-y:-528px"></div>');
});
});