From: Caisking Date: Tue, 1 Jul 2025 09:37:24 +0000 (+0800) Subject: 运动结束界面增加GPS轨迹绘制 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=6e0caa79daa741161be8cb7ebd0c1deca42a6452;p=mirrors%2FFD230.git 运动结束界面增加GPS轨迹绘制 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingEnddataView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingEnddataView.cpp index f110d272f..d48481830 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingEnddataView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingEnddataView.cpp @@ -723,26 +723,21 @@ void TraingEnddataView::GenerateTrackPoints() { TrackSegment seg1; seg1.color = Color::Blue(); - seg1.points = { - {299, 146}, {293, 154}, {288, 149}, {281, 163}, {277, 156}, {272, 166}, - {273, 169}, {268, 168}, {266, 172}, {261, 185}, {254, 181}, {253, 191}, - {249, 196}, {247, 201}, {243, 194}, {244, 198}, {239, 204}, {237, 217}, - {234, 218}, {231, 215}, {229, 217}, {226, 219}, {224, 228}, {224, 238}, - {221, 232}, {221, 244}, {220, 238}, {220, 245}, {218, 254}, {215, 250}, - {212, 256}, {214, 265}, {210, 257}, {208, 261}, {207, 265}, {208, 268}, - {204, 278}, {206, 277}, {206, 271}, {203, 282}, {202, 275}, {202, 278}, - {198, 289}, {197, 289}, {199, 291}, {199, 291}, {194, 291}, {195, 287}, - {193, 293}, {193, 285}, {189, 292}, {191, 299}, {188, 286}, {190, 289}, - {188, 297}, {184, 294}, {181, 294}, {182, 284}, {182, 293}, {177, 284}, - {179, 283}, {175, 280}, {171, 277}, {171, 275}, {170, 280}, {164, 278}, - {165, 269}, {161, 270}, {159, 260}, {158, 267}, {156, 255}, {149, 249}, - {147, 254}, {142, 244}, {143, 238}, {137, 237}, {131, 223}, {130, 225}, - {128, 212}, {121, 201}, {117, 206}, {115, 197}, {108, 191}, {106, 174}, - {98, 171}, {92, 163}, {89, 148}, {85, 141}, {74, 131}, {73, 123}, - {64, 111}, {61, 98}, {52, 92}, {47, 84}, {36, 70}, {30, 48}, - {23, 43}, {17, 33}, {58, 18}, - }; + + std::vector canvasData = TraingModel::GetInstance()->GetCanvasData(); + //最小轨迹点数限制,防止绘制失败 + if (canvasData.size() < 3) { + return; + } + //将点位赋值 + for (size_t i = 0; i < canvasData.size(); ++i) { + seg1.points.push_back(canvasData[i]); + } trackSegments_.push_back(seg1); + + //修改markers_ 起终点坐标 + markers_[0].pos = canvasData[0]; + markers_[1].pos = canvasData.back(); } void TraingEnddataView::DrawTrackSegment(UICanvas *canvas) { // 绘制网格