bool SaveGPSData();
std::string GetGPSDataPath(uint32_t timestamp);
//运动心率、gps开启准备
- void start_heart_gps();
+ void start_training_heart();
//运动心率、gps关闭
void stop_heart_gps();
///////////////////////////////////////////////
namespace OHOS {
-static const int initialY = 132 + CANVAS_SIZE;
+static const int initialY = 132 ;
static const int lineHeight = 130;
static const int iconHeight = 80;
static const int verticalOffset = 2;
-static const int baseY = 214 + CANVAS_SIZE;
-static const int startY_Unit = 252 + CANVAS_SIZE;
-static const int startY_Value = 292 + CANVAS_SIZE;
+static const int baseY = 214 ;
+static const int startY_Unit = 252 ;
+static const int startY_Value = 292 ;
static const int labelHeight = 40;
static const int labelInterval = 130;
}
TraingEnddataView *TraingEnddataView::GetInstance() {
-
return g_pTraingEnddataView;
}
// 初始化图像
void TraingEnddataView ::InitializeImageViews() {
+
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = CANVAS_SIZE;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+ initialY = 132 + height_canvas;
+ baseY = 214 + height_canvas;
+ startY_Unit = 252 + height_canvas;
+ startY_Value = 292 + height_canvas;
+
// 初始化主图标
InitImageView(imageIcon, 80, initialY, 54, iconHeight, "image",
WALKING_54_IMAGE);
/*title and sport*/
InitRollLabel(labeltype, 83, 50, 300, 35, "label1", STR_EXERCISE_LIST,
DEFAULT_VECTOR_FONT_FILENAME, 30);
- InitRollLabel(labelsport, 147, 140 + CANVAS_SIZE, 240, 35, "label6",
+ // 如果是有gps轨迹才需要加CANVAS_SIZE
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = CANVAS_SIZE;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+
+ initialY = 132 + height_canvas;
+ baseY = 214 + height_canvas;
+ startY_Unit = 252 + height_canvas;
+ startY_Value = 292 + height_canvas;
+
+ InitRollLabel(labelsport, 147, 140 + height_canvas, 240, 35, "label6",
STR_EXERCISE_OUTDOORRUNNING, DEFAULT_VECTOR_FONT_FILENAME, 30);
- InitLabel(labelduration, 146, 179 + CANVAS_SIZE, 240, 40, "label7",
+ InitLabel(labelduration, 146, 179 + height_canvas, 240, 40, "label7",
"13:00:22-15:00:12", DEFAULT_VECTOR_FONT_FILENAME, 28);
// 初始化Label
//时长
if (!TraingModel::GetInstance()->GetIsSpecial())
return;
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = 400;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+ baseY = baseY + height_canvas;
+ startY_Unit = startY_Unit + height_canvas;
+ startY_Value = startY_Value + height_canvas;
+
bool isincludeTag = TraingModel::GetInstance()->GetSportTag();
int tagflge = isincludeTag ? 1 : 0;
// 配置退出相关位置
void TraingEnddataView::ExitView() {
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = CANVAS_SIZE;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+ startY_Value = startY_Value + height_canvas;
+
bool isincludeTag = TraingModel::GetInstance()->GetSportTag();
int tagflge = isincludeTag ? 1 : 0;
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "=== GPS连接状态设置完成 ===");
}
//运动心率、gps开启准备
-void TraingModel::start_heart_gps() {
+void TraingModel::start_training_heart() {
if (gpsopen == false) {
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "开始启动GPS定位服务...");
//开启心率检测
#ifdef SUPPORT_PPG_SERVICE
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "启动心率检测服务");
ppg_hr_start();
-#endif
- // 判断是否是需要GPS的运动
- if (IsNeedGPS(GetSportEvent()) == false) {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "不需要GPS运动,跳过启动流程");
- return;
- }
- // 开启gps
-#if defined(SUPPORT_GNSS)
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "调用gnss_start()启动GPS服务");
- gnss_start();
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gnss_start()调用完成");
#endif
gpsopen = true;
}
TraingNomalView::TraingNomalView()
{
/*判断是否需要GPS*/
- TraingModel::GetInstance()->start_heart_gps();
+ TraingModel::GetInstance()->start_training_heart();
g_pTraingNomalView = this;
}
bool SaveGPSData();
std::string GetGPSDataPath(uint32_t timestamp);
//运动心率、gps开启准备
- void start_heart_gps();
+ void start_training_heart();
//运动心率、gps关闭
void stop_heart_gps();
///////////////////////////////////////////////
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "=== GPS连接状态设置完成 ===");
}
//运动心率、gps开启准备
-void TraingModel::start_heart_gps() {
+void TraingModel::start_training_heart() {
if (gpsopen == false) {
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "开始启动GPS定位服务...");
//开启心率检测
#ifdef SUPPORT_PPG_SERVICE
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "启动心率检测服务");
ppg_hr_start();
-#endif
- // 判断是否是需要GPS的运动
- if (IsNeedGPS(GetSportEvent()) == false) {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "不需要GPS运动,跳过启动流程");
- return;
- }
- // 开启gps
-#if defined(SUPPORT_GNSS)
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "调用gnss_start()启动GPS服务");
- gnss_start();
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gnss_start()调用完成");
#endif
gpsopen = true;
}
TraingNomalView::TraingNomalView()
{
/*判断是否需要GPS*/
- TraingModel::GetInstance()->start_heart_gps();
+ TraingModel::GetInstance()->start_training_heart();
g_pTraingNomalView = this;
}
bool SaveGPSData();
std::string GetGPSDataPath(uint32_t timestamp);
//运动心率、gps开启准备
- void start_heart_gps();
+ void start_training_heart();
//运动心率、gps关闭
void stop_heart_gps();
///////////////////////////////////////////////
namespace OHOS {
-static const int initialY = 132 + CANVAS_SIZE;
+static int initialY = 132 ;
static const int lineHeight = 130;
static const int iconHeight = 80;
static const int verticalOffset = 2;
-static const int baseY = 214 + CANVAS_SIZE;
-static const int startY_Unit = 252 + CANVAS_SIZE;
-static const int startY_Value = 292 + CANVAS_SIZE;
+static int baseY = 214 ;
+static int startY_Unit = 252 ;
+static int startY_Value = 292 ;
static const int labelHeight = 40;
static const int labelInterval = 130;
}
TraingEnddataView *TraingEnddataView::GetInstance() {
-
return g_pTraingEnddataView;
}
// 初始化图像
void TraingEnddataView ::InitializeImageViews() {
+
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = CANVAS_SIZE;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+ initialY = 132 + height_canvas;
+ baseY = 214 + height_canvas;
+ startY_Unit = 252 + height_canvas;
+ startY_Value = 292 + height_canvas;
+
// 初始化主图标
InitImageView(imageIcon, 80, initialY, 54, iconHeight, "image",
WALKING_54_IMAGE);
/*title and sport*/
InitRollLabel(labeltype, 83, 50, 300, 35, "label1", STR_EXERCISE_LIST,
DEFAULT_VECTOR_FONT_FILENAME, 30);
- InitRollLabel(labelsport, 147, 140 + CANVAS_SIZE, 240, 35, "label6",
+ // 如果是有gps轨迹才需要加CANVAS_SIZE
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = CANVAS_SIZE;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+
+ initialY = 132 + height_canvas;
+ baseY = 214 + height_canvas;
+ startY_Unit = 252 + height_canvas;
+ startY_Value = 292 + height_canvas;
+
+ InitRollLabel(labelsport, 147, 140 + height_canvas, 240, 35, "label6",
STR_EXERCISE_OUTDOORRUNNING, DEFAULT_VECTOR_FONT_FILENAME, 30);
- InitLabel(labelduration, 146, 179 + CANVAS_SIZE, 240, 40, "label7",
+ InitLabel(labelduration, 146, 179 + height_canvas, 240, 40, "label7",
"13:00:22-15:00:12", DEFAULT_VECTOR_FONT_FILENAME, 28);
// 初始化Label
//时长
if (!TraingModel::GetInstance()->GetIsSpecial())
return;
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = 400;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+ baseY = baseY + height_canvas;
+ startY_Unit = startY_Unit + height_canvas;
+ startY_Value = startY_Value + height_canvas;
+
bool isincludeTag = TraingModel::GetInstance()->GetSportTag();
int tagflge = isincludeTag ? 1 : 0;
// 配置退出相关位置
void TraingEnddataView::ExitView() {
+ std::vector<Point> canvasData = TraingModel::GetInstance()->GetCanvasData();
+ int height_canvas = 0;
+ if(canvasData.size() > 0)
+ {
+ height_canvas = CANVAS_SIZE;
+ }
+ else
+ {
+ height_canvas = 0;
+ }
+ startY_Value = startY_Value + height_canvas;
+
bool isincludeTag = TraingModel::GetInstance()->GetSportTag();
int tagflge = isincludeTag ? 1 : 0;
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "=== GPS连接状态设置完成 ===");
}
//运动心率、gps开启准备
-void TraingModel::start_heart_gps() {
+void TraingModel::start_training_heart() {
if (gpsopen == false) {
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "开始启动GPS定位服务...");
//开启心率检测
#ifdef SUPPORT_PPG_SERVICE
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "启动心率检测服务");
ppg_hr_start();
-#endif
- // 判断是否是需要GPS的运动
- if (IsNeedGPS(GetSportEvent()) == false) {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "不需要GPS运动,跳过启动流程");
- return;
- }
- // 开启gps
-#if defined(SUPPORT_GNSS)
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "调用gnss_start()启动GPS服务");
- gnss_start();
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gnss_start()调用完成");
#endif
gpsopen = true;
}
TraingNomalView::TraingNomalView()
{
/*判断是否需要GPS*/
- TraingModel::GetInstance()->start_heart_gps();
+ TraingModel::GetInstance()->start_training_heart();
g_pTraingNomalView = this;
}