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<Point> 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) {
// 绘制网格