fix: 修改自动采集规则
This commit is contained in:
parent
9170934cff
commit
b32f3f5d09
@ -87,6 +87,7 @@ import com.otaliastudios.cameraview.size.AspectRatio;
|
||||
import com.otaliastudios.cameraview.size.SizeSelector;
|
||||
import com.otaliastudios.cameraview.size.SizeSelectors;
|
||||
import com.tencent.map.geolocation.TencentLocation;
|
||||
import com.tencent.map.geolocation.TencentMotion;
|
||||
import com.tencent.map.geolocation.TencentPoi;
|
||||
import com.tencent.tencentmap.mapsdk.maps.CameraUpdate;
|
||||
import com.tencent.tencentmap.mapsdk.maps.CameraUpdateFactory;
|
||||
@ -718,21 +719,21 @@ public class AutoTakePictureActivity extends BaseActivity implements View.OnClic
|
||||
finishEntityMap.put(roadMatchEntity.getId(), roadMatchEntity);
|
||||
}
|
||||
// 匹配到终点、或匹配距离超过90%
|
||||
if (roadMatchEntity.getMatchPointList().size()>=2&&GeometryTools.getLineStringByMyCoordinate(roadMatchEntity.getMatchPointList()).getLength()/roadMatchEntity.getLength()>=MATCH_CONFIRM_FINISH_BUFFER
|
||||
if ((roadMatchEntity.getMatchPointList().size()>=2&&GeometryTools.getLineStringByMyCoordinate(roadMatchEntity.getMatchPointList()).getLength()/roadMatchEntity.getLength()>=MATCH_CONFIRM_FINISH_BUFFER)
|
||||
|| currentEndDistance<= finalMatchStartDistance) {
|
||||
roadMatchEntity.setEndMathchTime(System.currentTimeMillis());
|
||||
// 匹配到终点后,记录该条数据的最新一次匹配距离,当下一次匹配距离大于当前距离,则认为该数据完全匹配,结束匹配
|
||||
roadMatchEntity.setLastEndDistance(currentEndDistance);
|
||||
}
|
||||
} else { // 无法匹配,或当前道路并不是距离最近的数据
|
||||
// 将无法匹配的点位个数记录到对象中
|
||||
roadMatchEntity.setUnMatchCount(roadMatchEntity.getUnMatchCount()+1);
|
||||
roadMatchEntity.setMatchCount(0);// 设置连续匹配的数据个数为0
|
||||
roadMatchEntity.getUnMatchPointList().add(new MyCoordinate(currentPoint.getX(), currentPoint.getY()));
|
||||
// 该数据未匹配,但是如果此前已经匹配到结束点,则仍然认为匹配成功
|
||||
if (roadMatchEntity.getEndMathchTime()>0) {
|
||||
finishEntityMap.put(roadMatchEntity.getId(), roadMatchEntity);
|
||||
} else {
|
||||
// 将无法匹配的点位个数记录到对象中
|
||||
roadMatchEntity.setUnMatchCount(roadMatchEntity.getUnMatchCount()+1);
|
||||
roadMatchEntity.setMatchCount(0);// 设置连续匹配的数据个数为0
|
||||
roadMatchEntity.getUnMatchPointList().add(new MyCoordinate(currentPoint.getX(), currentPoint.getY()));
|
||||
// 判断当前是否存在已匹配的点
|
||||
if (roadMatchEntity.getMatchPointList().size()>1) { // 存在匹配的点超过1个,根据长度判断
|
||||
if (GeometryTools.getLineStringByMyCoordinate(roadMatchEntity.getMatchPointList()).getLength()/roadMatchEntity.getLength()>UNMATCH_GIVE_UP_DISTANCE_BUFFER) {
|
||||
@ -770,9 +771,12 @@ public class AutoTakePictureActivity extends BaseActivity implements View.OnClic
|
||||
}
|
||||
// TODO 完成的entity数据,需要自动生成对应的数据,还需要自动复制对应的照片,通知服务器采集完成
|
||||
finishRoadTask(finishEntityMap);
|
||||
// 语音提示用户
|
||||
mediaPlayer.start();
|
||||
systemTTS.playText("拍摄完成");
|
||||
// 只有在没有正在拍摄的任务,所有任务都拍摄完成时才会提示
|
||||
if (roadMatchEntityList.isEmpty()) {
|
||||
// 语音提示用户
|
||||
mediaPlayer.start();
|
||||
systemTTS.playText("拍摄完成");
|
||||
}
|
||||
}
|
||||
|
||||
if (!unMatchList.isEmpty()) {
|
||||
@ -826,7 +830,7 @@ public class AutoTakePictureActivity extends BaseActivity implements View.OnClic
|
||||
.cls(TaskByNetBean.class)
|
||||
.params(new HttpParams())
|
||||
.token(Constant.ACCESS_TOKEN);
|
||||
okhttp3.Response response = okGoBuilder.getSynchronization();
|
||||
Response response = okGoBuilder.getSynchronization();
|
||||
Gson gson = new Gson();
|
||||
TaskByNetBean taskByNetBean = gson.fromJson(response.body().string(), TaskByNetBean.class);
|
||||
if (taskByNetBean.getCode() == 200) {
|
||||
@ -1457,6 +1461,16 @@ public class AutoTakePictureActivity extends BaseActivity implements View.OnClic
|
||||
return "NetWork";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getFusionProvider() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSourceProvider() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double getLatitude() {
|
||||
return latLng.getLatitude();
|
||||
@ -1562,6 +1576,11 @@ public class AutoTakePictureActivity extends BaseActivity implements View.OnClic
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getInOutStatus() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getIndoorBuildingId() {
|
||||
return null;
|
||||
@ -1592,11 +1611,36 @@ public class AutoTakePictureActivity extends BaseActivity implements View.OnClic
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TencentMotion getMotion() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getGpsQuality() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getDeltaAngle() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getDeltaSpeed() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCoordinateType() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getFakeReason() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int isMockGps() {
|
||||
return 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user