ajuste retorno a base manual

This commit is contained in:
Diego Freitas 2026-03-27 07:45:54 -03:00
parent e42e1e6109
commit 6640b30712
1 changed files with 3 additions and 3 deletions

View File

@ -1777,12 +1777,12 @@ namespace AgroBase.Models
Variaveis.OperacaoEmAndamento.Sensoriamento?.InserirLog(T_Code.Trj, StatusModulo.Falha, 0, "Trajetória de retorno inválida."); Variaveis.OperacaoEmAndamento.Sensoriamento?.InserirLog(T_Code.Trj, StatusModulo.Falha, 0, "Trajetória de retorno inválida.");
else else
{ {
AplicarTrajetoriaFixaRetorno(pontosRetorno, "RetornoBase"); AplicarTrajetoriaFixaRetorno(pontosRetorno, "RetornoBase", waypointsManual?.Any() ?? false);
AtualizarDadosOperacaoParaRetorno(); AtualizarDadosOperacaoParaRetorno();
} }
} }
private void AplicarTrajetoriaFixaRetorno(List<GPSModel> pontos, string motivo) private void AplicarTrajetoriaFixaRetorno(List<GPSModel> pontos, string motivo, bool manual)
{ {
var traj = new List<PontoTrajetoriaModel>(); var traj = new List<PontoTrajetoriaModel>();
@ -1800,7 +1800,7 @@ namespace AgroBase.Models
var pontos_corrigidos = RemoverPontosMuitoProximos(pontos, DistanciaEntrePontos, 0, DistanciaEntrePontosCurva); var pontos_corrigidos = RemoverPontosMuitoProximos(pontos, DistanciaEntrePontos, 0, DistanciaEntrePontosCurva);
double distanciaPararAntecipado = 3.5; double distanciaPararAntecipado = 3.5;
int idx = 1; int idx = 1;
int qtdPontosRemoverFinal = (int)(distanciaPararAntecipado / DistanciaEntrePontos); int qtdPontosRemoverFinal = manual ? 0 : (int)(distanciaPararAntecipado / DistanciaEntrePontos);
foreach (var p in pontos_corrigidos) foreach (var p in pontos_corrigidos)
{ {
if (idx < (pontos_corrigidos.Count - qtdPontosRemoverFinal) || idx == pontos_corrigidos.Count - 1) if (idx < (pontos_corrigidos.Count - qtdPontosRemoverFinal) || idx == pontos_corrigidos.Count - 1)