mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 01:20:25 +08:00
Tango: added GPS to default status when saved, reduced to 1 sec for GPS too old
This commit is contained in:
@@ -848,7 +848,7 @@ SensorData CameraTango::captureImage(CameraInfo * info)
|
||||
}
|
||||
data.setGroundTruth(odom);
|
||||
|
||||
if(lastKnownGPS_.stamp() > 0.0 && rgbStamp-lastKnownGPS_.stamp()<2.0)
|
||||
if(lastKnownGPS_.stamp() > 0.0 && rgbStamp-lastKnownGPS_.stamp()<1.0)
|
||||
{
|
||||
data.setGPS(lastKnownGPS_);
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
<string name="hypothesis">"Hypothesis (%): "</string>
|
||||
<string name="fps">"FPS (rendering): "</string>
|
||||
<string name="distance">"Distance travelled: "</string>
|
||||
<string name="gps">"GPS (long,lat,alt,bearing,acc): "</string>
|
||||
<string name="gps">"GPS (long,lat,alt,bearing,err): "</string>
|
||||
<string name="time">"Time: "</string>
|
||||
|
||||
<!-- Preference keys: BEGIN -->
|
||||
|
||||
@@ -221,6 +221,7 @@ public class RTABMapActivity extends Activity implements OnClickListener, OnItem
|
||||
private String mLoopThr;
|
||||
private String mMinInliers;
|
||||
private String mMaxOptimizationError;
|
||||
private boolean mGPSSaved = false;
|
||||
|
||||
private LocationManager mLocationManager;
|
||||
private LocationListener mLocationListener;
|
||||
@@ -708,8 +709,8 @@ public class RTABMapActivity extends Activity implements OnClickListener, OnItem
|
||||
boolean keepAllDb = sharedPref.getBoolean(getString(R.string.pref_key_keep_all_db), Boolean.parseBoolean(getString(R.string.pref_default_keep_all_db)));
|
||||
boolean optimizeFromGraphEnd = sharedPref.getBoolean(getString(R.string.pref_key_optimize_end), Boolean.parseBoolean(getString(R.string.pref_default_optimize_end)));
|
||||
String optimizer = sharedPref.getString(getString(R.string.pref_key_optimizer), getString(R.string.pref_default_optimizer));
|
||||
boolean gpsSaved = sharedPref.getBoolean(getString(R.string.pref_key_gps_saved), Boolean.parseBoolean(getString(R.string.pref_default_gps_saved)));
|
||||
if(gpsSaved)
|
||||
mGPSSaved = sharedPref.getBoolean(getString(R.string.pref_key_gps_saved), Boolean.parseBoolean(getString(R.string.pref_default_gps_saved)));
|
||||
if(mGPSSaved)
|
||||
{
|
||||
mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mLocationListener);
|
||||
mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_GAME);
|
||||
@@ -997,11 +998,11 @@ public class RTABMapActivity extends Activity implements OnClickListener, OnItem
|
||||
}
|
||||
else if((mItemStatusVisibility.isChecked() || mState == State.STATE_VISUALIZING_WHILE_LOADING))
|
||||
{
|
||||
mRenderer.updateTexts(Arrays.copyOfRange(mStatusTexts, 0, 3));
|
||||
mRenderer.updateTexts(Arrays.copyOfRange(mStatusTexts, 0, 4));
|
||||
}
|
||||
else if(mItemDebugVisibility.isChecked())
|
||||
{
|
||||
mRenderer.updateTexts(Arrays.copyOfRange(mStatusTexts, 4, mStatusTexts.length));
|
||||
mRenderer.updateTexts(Arrays.copyOfRange(mStatusTexts, 5, mStatusTexts.length));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1201,22 +1202,29 @@ public class RTABMapActivity extends Activity implements OnClickListener, OnItem
|
||||
|
||||
mMapNodes = nodes;
|
||||
|
||||
if(mLastKnownLocation != null)
|
||||
if(mGPSSaved)
|
||||
{
|
||||
long millisec = System.currentTimeMillis() - mLastKnownLocation.getTime();
|
||||
if(millisec > 2000)
|
||||
if(mLastKnownLocation != null)
|
||||
{
|
||||
statusTexts[3] = getString(R.string.gps)+String.format("[too old, %d ms]", millisec);
|
||||
long millisec = System.currentTimeMillis() - mLastKnownLocation.getTime();
|
||||
if(millisec > 1000)
|
||||
{
|
||||
statusTexts[3] = getString(R.string.gps)+String.format("[too old, %d ms]", millisec);
|
||||
}
|
||||
else
|
||||
{
|
||||
statusTexts[3] = getString(R.string.gps)+
|
||||
String.format("%.2f %.2f %.2fm %.0fdeg %.0fm",
|
||||
mLastKnownLocation.getLongitude(),
|
||||
mLastKnownLocation.getLatitude(),
|
||||
mLastKnownLocation.getAltitude(),
|
||||
mCompassDeg,
|
||||
mLastKnownLocation.getAccuracy());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
statusTexts[3] = getString(R.string.gps)+
|
||||
String.format("%.2f %.2f %.2fm %.0fdeg %.0fm",
|
||||
mLastKnownLocation.getLongitude(),
|
||||
mLastKnownLocation.getLatitude(),
|
||||
mLastKnownLocation.getAltitude(),
|
||||
mCompassDeg,
|
||||
mLastKnownLocation.getAccuracy());
|
||||
statusTexts[3] = getString(R.string.gps)+"[not yet available]";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user