Changeset 19455 in josm for trunk/src/org/openstreetmap
- Timestamp:
- 2026-01-05T14:30:23+01:00 (13 days ago)
- Location:
- trunk/src/org/openstreetmap/josm/gui/layer/geoimage
- Files:
-
- 3 edited
-
CorrelateGpxWithImages.java (modified) (4 diffs)
-
EditImagesSequenceAction.java (modified) (1 diff)
-
GeoImageLayer.java (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java
r19426 r19455 552 552 JLabel labelPosition = new JLabel(tr("Override position for: ")); 553 553 554 int numAll = yLayer.getSortedImgList(true, true).size(); 555 int numExif = numAll - yLayer.getSortedImgList(false, true).size(); 556 int numTagged = numAll - yLayer.getSortedImgList(true, false).size(); 554 int numAll = yLayer.getSortedImgList(true, true, imgTimeSource).size(); 555 int numExif = numAll - yLayer.getSortedImgList(false, true, imgTimeSource).size(); 556 int numTagged = numAll - yLayer.getSortedImgList(true, false, imgTimeSource).size(); 557 557 558 558 cbExifImg = new JCheckBox(tr("Images with geo location in exif data ({0}/{1})", numExif, numAll)); … … 829 829 yLayer.discardTmp(); 830 830 831 //Get how many images are present in the layer 832 int totalImg = yLayer.getImages().size(); 833 831 834 // Construct a list of images that have a date, and sort them on the date. 832 835 List<ImageEntry> dateImgLst = getSortedImgList(); … … 847 850 return trn("<html>Matched <b>{0}</b> of <b>{1}</b> photo to GPX track.</html>", 848 851 "<html>Matched <b>{0}</b> of <b>{1}</b> photos to GPX track.</html>", 849 dateImgLst.size(), lastNumMatched,dateImgLst.size());852 totalImg, lastNumMatched, totalImg); 850 853 } 851 854 } … … 1004 1007 1005 1008 private List<ImageEntry> getSortedImgList() { 1006 return yLayer.getSortedImgList(cbExifImg.isSelected(), cbTaggedImg.isSelected()); 1009 return yLayer.getSortedImgList(cbExifImg.isSelected(), cbTaggedImg.isSelected(), imgTimeSource); 1007 1010 } 1008 1011 -
trunk/src/org/openstreetmap/josm/gui/layer/geoimage/EditImagesSequenceAction.java
r19426 r19455 80 80 yLayer.discardTmp(); 81 81 // Construct a list of images that have a date, and sort them on the date. 82 List<ImageEntry> dateImgLst = yLayer.getSortedImgList(true, true); 82 List<ImageEntry> dateImgLst = yLayer.getSortedImgList(true, true, TimeSource.EXIFCAMTIME); 83 83 // Create a temporary copy for each image 84 84 dateImgLst.forEach(ie -> ie.createTmp().unflagNewGpsData()); -
trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java
r19369 r19455 48 48 import org.openstreetmap.josm.data.gpx.GpxImageEntry; 49 49 import org.openstreetmap.josm.data.gpx.GpxTrack; 50 import org.openstreetmap.josm.data.gpx.TimeSource; 50 51 import org.openstreetmap.josm.data.imagery.street_level.IImageEntry; 51 52 import org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor; … … 978 979 * @param exif also returns images with exif-gps info 979 980 * @param tagged also returns tagged images 981 * @param gpsTime use GPS Time if true, instead of Camera RTC Time 980 982 * @return matching images 981 */ 982 List<ImageEntry> getSortedImgList(boolean exif, boolean tagged) { 983 * @since 19455 gpsTime was added 984 */ 985 List<ImageEntry> getSortedImgList(boolean exif, boolean tagged, TimeSource timeSource) { 983 986 return data.getImages().stream() 984 .filter(GpxImageEntry::hasExifTime) 987 .filter(timeSource == TimeSource.EXIFGPSTIME ? GpxImageEntry::hasExifGpsTime : GpxImageEntry::hasExifTime) 985 988 .filter(e -> e.getExifCoor() == null || exif) 986 989 .filter(e -> tagged || !e.isTagged() || e.getExifCoor() != null) 987 .sorted(Comparator.comparing(ImageEntry::getExifInstant)) 990 .sorted(timeSource == TimeSource.EXIFGPSTIME 991 ? Comparator.comparing(ImageEntry::getExifGpsInstant) 992 : Comparator.comparing(ImageEntry::getExifInstant)) 988 993 .collect(toList()); 989 994 }
Note:
See TracChangeset
for help on using the changeset viewer.
