Rely more on mapillary selected photo key than photoviewer datum

Remove mapillary map feature selection outline when closing photoviewer
This commit is contained in:
Quincy Morgan
2019-12-11 17:53:03 -05:00
parent 5e756bb90d
commit 4d8d27f3c4
2 changed files with 10 additions and 14 deletions
+7 -10
View File
@@ -455,7 +455,7 @@ export default {
.selectAll('.photo-wrapper')
.classed('hide', true);
d3_selectAll('.viewfield-group, .sequence, .icon-sign')
d3_selectAll('.viewfield-group, .sequence, .icon-detected')
.classed('currentView', false);
return this.setStyles(null, true);
@@ -573,7 +573,7 @@ export default {
this.setStyles(null, true);
// if signs signs are shown, highlight the ones that appear in this image
d3_selectAll('.layer-mapillary-signs .icon-sign')
d3_selectAll('.layer-mapillary-signs .icon-detected')
.classed('currentView', function(d) {
return d.detections.some(function(detection) {
return detection.image_key === imageKey;
@@ -593,9 +593,8 @@ export default {
},
getSequenceKeyForImage: function(d) {
var imageKey = d && d.key;
return imageKey && _mlyCache.sequences.forImageKey[imageKey];
getSequenceKeyForImageKey: function(imageKey) {
return _mlyCache.sequences.forImageKey[imageKey];
},
@@ -615,14 +614,12 @@ export default {
}
var hoveredImageKey = hovered && hovered.key;
var hoveredSequenceKey = this.getSequenceKeyForImage(hovered);
var hoveredSequenceKey = hoveredImageKey && this.getSequenceKeyForImageKey(hoveredImageKey);
var hoveredLineString = hoveredSequenceKey && _mlyCache.sequences.lineString[hoveredSequenceKey];
var hoveredImageKeys = (hoveredLineString && hoveredLineString.properties.coordinateProperties.image_keys) || [];
var viewer = d3_select('#photoviewer');
var selected = viewer.empty() ? undefined : viewer.datum();
var selectedImageKey = selected && selected.key;
var selectedSequenceKey = this.getSequenceKeyForImage(selected);
var selectedImageKey = _mlySelectedImageKey;
var selectedSequenceKey = selectedImageKey && this.getSequenceKeyForImageKey(selectedImageKey);
var selectedLineString = selectedSequenceKey && _mlyCache.sequences.lineString[selectedSequenceKey];
var selectedImageKeys = (selectedLineString && selectedLineString.properties.coordinateProperties.image_keys) || [];
+3 -4
View File
@@ -161,14 +161,13 @@ export function svgMapillaryImages(projection, context, dispatch) {
}
function update() {
var viewer = d3_select('#photoviewer');
var selected = viewer.empty() ? undefined : viewer.datum();
var z = ~~context.map().zoom();
var showMarkers = (z >= minMarkerZoom);
var showViewfields = (z >= minViewfieldZoom);
var service = getService();
var selectedKey = service && service.getSelectedImageKey();
var sequences = (service ? service.sequences(projection) : []);
var images = (service && showMarkers ? service.images(projection) : []);
@@ -213,8 +212,8 @@ export function svgMapillaryImages(projection, context, dispatch) {
var markers = groups
.merge(groupsEnter)
.sort(function(a, b) {
return (a === selected) ? 1
: (b === selected) ? -1
return (a.key === selectedKey) ? 1
: (b.key === selectedKey) ? -1
: b.loc[1] - a.loc[1]; // sort Y
})
.attr('transform', transform)