[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-imaging
Subject:    [Kde-imaging] [Bug 134747] GPS Sync: not optimal correlation
From:       Gilles Caulier <caulier.gilles () free ! fr>
Date:       2006-09-30 9:03:54
Message-ID: 20060930090354.6352.qmail () ktown ! kde ! org
[Download RAW message or body]

------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=134747         




------- Additional Comments From caulier.gilles free fr  2006-09-30 11:03 -------
SVN commit 590452 by cgilles:

kipi-plugins from trunk : GPSSync : optimize GPX data parsing to search the minimal diff time.

Fabien, your patch is not optimum because it don't check all items in the list. In fact if the date list \
of GPS point isn't sorted using time stamp, your optimization don't work.

Of course i will very surprise if the gps data list is not sorted in time (:=))). But like I have none \
experience with GPS data, we must care about this point.

Please test this patch indeep and give me your feedback. Thanks in advance.

CCBUGS: 134747

 M  +9 -3      gpsdataparser.cpp  


--- trunk/extragear/libs/kipi-plugins/gpssync/gpsdataparser.cpp #590451:590452
 @ -68,6 +68,8  @
     QDateTime cameraGMTDateTime = photoDateTime.addSecs(timeZone*3600*(-1));
 
     // We trying to find the right date in the GPS points list.
+    bool findItem = false;
+    int nbSecItem = maxGapTime;
 
     for (GPSDataMap::Iterator it = m_GPSDataMap.begin();
          it != m_GPSDataMap.end(); ++it )
 @ -77,13 +79,17  @
         
         int nbSecs = abs(cameraGMTDateTime.secsTo( it.key() ));
         
-        if( nbSecs < maxGapTime )
+        // We tring to find the minimal accuracy.
+        if( nbSecs < maxGapTime && nbSecs < nbSecItem)
         {
-            gpsData = m_GPSDataMap[it.key()];
-            return true;
+            gpsData   = m_GPSDataMap[it.key()];
+            findItem  = true;
+            nbSecItem = nbSecs;
         }
     }
 
+    if (findItem) return true;
+
     // If we can't find it, we will trying to interpolate the GPS point.
 
     if (interpolate)
_______________________________________________
Kde-imaging mailing list
Kde-imaging@kde.org
https://mail.kde.org/mailman/listinfo/kde-imaging


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic