From: 袁清梦 <3449750381@qq.com> Date: Fri, 30 Aug 2024 10:05:49 +0000 (+0000) Subject: Merge #834 into sdk602patch0626 from refs/changes/834/head X-Git-Tag: release_V1.2.70_20241020_135402~550^2~2^2~2 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=d317135e294511dd0a4332045396803ec6f2f708;p=mirrors%2FFD230.git Merge #834 into sdk602patch0626 from refs/changes/834/head Code review from 袁清梦 * refs/changes/834/head: (10 commits squashed) - 黑曜律动表盘资源汇总 - Merge branch 'sdk602patch0626' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0626 - Merge branch 'sdk602patch0626' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0626 - Merge branch 'sdk602patch0626' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0626 - Merge branch 'sdk602patch0626' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0626 - Merge branch 'sdk602patch0626' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0626 - 更新表盘制作脚本以及说明文档 - 更新黑耀表盘资源文件 - 修改时间分钟个位获取的错误 - 优化睡眠数据计算。优化数据显示 Signed-off-by: Caisking <3449750381@qq.com> Reviewed-by: snickersun@163.com Merged-by: snickersun@163.com CR-link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/834 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelMinUnits.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelMinUnits.cpp index 7d8a50bba..f5b289f66 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelMinUnits.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelMinUnits.cpp @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-08-08 15:02:35 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-08-30 17:12:56 + * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelMinUnits.cpp + */ /*** * @Date: 2024-08-08 15:02:35 * @LastEditors: Caisking 3449750381@qq.com @@ -22,7 +28,7 @@ namespace OHOS struct timeval tv; gettimeofday(&tv, NULL); // 获取当前时间 localtime_r(&tv.tv_sec, &tblock_); - min_units = tblock_.tm_hour % 10; // 小时十位 + min_units = tblock_.tm_min % 10; // 小时十位 out = static_cast(min_units); diff --git a/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepView.cpp b/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepView.cpp index 4aca60cf4..7aa115352 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepView.cpp @@ -30,9 +30,15 @@ namespace OHOS // 刷新UI数据 void SleepView::SleepDataRefresh() { - int sleep_hour = SleepModel::GetInstance().get_sleep_hour(); - int sleep_min = SleepModel::GetInstance().get_sleep_min(); + // 获取睡眠数据 + SleepModel &sleepModel = SleepModel::GetInstance(); + int sleep_hour = sleepModel.get_sleep_hour(); + int sleep_min = sleepModel.get_sleep_min(); + int total_sleep = sleepModel.get_sleep_total(); + int sleep_goal = sleepModel.get_sleep_goal(); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SleepDataRefresh %d %d", sleep_hour, sleep_min); + // 补零操作 std::string hour_str = (sleep_hour < 10) ? "0" + std::to_string(sleep_hour) : std::to_string(sleep_hour); std::string min_str = (sleep_min < 10) ? "0" + std::to_string(sleep_min) : std::to_string(sleep_min); @@ -45,19 +51,25 @@ namespace OHOS time_hour->SetText(hour_str.c_str()); time_minute->SetText(min_str.c_str()); } - float value = (static_cast(SleepModel::GetInstance().get_sleep_total()) / static_cast(SleepModel::GetInstance().get_sleep_goal())) * 100.0f; - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "value %d!", value); + + // 计算进度百分比,确保目标睡眠时间不为零 + float value = 0.0f; + if (sleep_goal > 0) + { + value = (static_cast(total_sleep) / (sleep_goal / 60)) * 100.0f; + } + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Progress value: %.2f%%", value); circleProgress_->SetValue(value); circleProgress_->SetCapType(CAP_ROUND); } // 更新目标时间 - int totaltime = SleepModel::GetInstance().get_sleep_goal(); if (goaltime != nullptr) { - UpdateLabel(goaltime, totaltime, STR_SLEEPMGOAL); + UpdateLabel(goaltime, sleep_goal, STR_SLEEPMGOAL); } + // 刷新视图 RootView::GetInstance()->Invalidate(); } diff --git a/tools/dial_converter_tool/dial_lzma/114/obsidianrhythm.lzma b/tools/dial_converter_tool/dial_lzma/114/obsidianrhythm.lzma index 225405ceb..bbfe193e3 100644 Binary files a/tools/dial_converter_tool/dial_lzma/114/obsidianrhythm.lzma and b/tools/dial_converter_tool/dial_lzma/114/obsidianrhythm.lzma differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_FRI.png b/tools/dial_converter_tool/instance/114/week/WEEK_FRI.png index 59536e8e5..cf6a448b2 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_FRI.png and b/tools/dial_converter_tool/instance/114/week/WEEK_FRI.png differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_MON.png b/tools/dial_converter_tool/instance/114/week/WEEK_MON.png index 2482d252a..e2ead0a2a 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_MON.png and b/tools/dial_converter_tool/instance/114/week/WEEK_MON.png differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_SAT.png b/tools/dial_converter_tool/instance/114/week/WEEK_SAT.png index cdf9f5ce5..7c2933274 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_SAT.png and b/tools/dial_converter_tool/instance/114/week/WEEK_SAT.png differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_SUN.png b/tools/dial_converter_tool/instance/114/week/WEEK_SUN.png index 780bcf1ec..a43304d42 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_SUN.png and b/tools/dial_converter_tool/instance/114/week/WEEK_SUN.png differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_THU.png b/tools/dial_converter_tool/instance/114/week/WEEK_THU.png index a23c62dfb..3da8fa976 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_THU.png and b/tools/dial_converter_tool/instance/114/week/WEEK_THU.png differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_TUE.png b/tools/dial_converter_tool/instance/114/week/WEEK_TUE.png index edea9abff..39f7db78c 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_TUE.png and b/tools/dial_converter_tool/instance/114/week/WEEK_TUE.png differ diff --git a/tools/dial_converter_tool/instance/114/week/WEEK_WED.png b/tools/dial_converter_tool/instance/114/week/WEEK_WED.png index f5a6cd6ed..ba3a5eeed 100644 Binary files a/tools/dial_converter_tool/instance/114/week/WEEK_WED.png and b/tools/dial_converter_tool/instance/114/week/WEEK_WED.png differ diff --git a/tools/dial_converter_tool/make_tools/gen_dial_bin.sh b/tools/dial_converter_tool/make_tools/gen_dial_bin.sh index f4d5acbc2..44c33d71b 100644 --- a/tools/dial_converter_tool/make_tools/gen_dial_bin.sh +++ b/tools/dial_converter_tool/make_tools/gen_dial_bin.sh @@ -1,54 +1,69 @@ -#!/bin/bash -### - # @Date: 2024-06-07 09:44:50 +#!/bin/bash +### +# @Date: 2024-06-07 09:44:50 # @LastEditors: Caisking 3449750381@qq.com - # @LastEditTime: 2024-07-18 16:59:20 + # @LastEditTime: 2024-08-30 15:00:54 # @FilePath: /FD230/tools/dial_converter_tool/make_tools/gen_dial_bin.sh -### - -# 返回上一级目录 -cd .. - -# 检查并创建 out 和 dial_lzma 目录 -mkdir -p out dial_lzma - -# 获取 instance 目录下的所有子目录列表 -subdirs=(instance/*/) -for subdir in "${subdirs[@]}"; do - # 提取子目录名称 - dial=$(basename "$subdir") - - # 查找子目录中的 XML 文件并提取文件名 - xml_file=$(find "$subdir" -maxdepth 1 -type f -name "*.xml" -printf "%f\n" | head -n 1) - if [ -z "$xml_file" ]; then - echo "Error: XML file not found in $subdir" - continue - fi - - # 计算文件数量和大小 - dialfilecount=$(find "$subdir" -maxdepth 1 -type f | wc -l) - dialfilesize=$(du -sh "$subdir" | awk '{print $1}') - - # 输出统计信息 - echo "Processing $dial [$dialfilecount files, $dialfilesize size]" - - # 调用 main.py 处理子目录中的文件 - if ! python main.py -dir "$subdir" -output out/; then - echo "Error processing directory $dial" - continue - fi - - # 压缩 .bin 文件到 .lzma 文件 - bin_file="out/${xml_file%.xml}.bin" - lzma_file="dial_lzma/$dial/${xml_file%.xml}.lzma" - - # 创建必要的目录 - mkdir -p "$(dirname "$lzma_file")" - - # 使用 lzma_tool 压缩文件 - if ! ../../code/sdk/tools/bin/lzma_tool/lzma_tool -d12 -lc0 -lp0 e "$bin_file" "$lzma_file"; then - echo " lzma_tool directory $dial error" - else - echo " lzma_tool directory $dial ok" - fi +### + +# 返回上一级目录 +cd .. + +# 检查并创建 out 和 dial_lzma 目录 +mkdir -p out dial_lzma + +# 检查是否传入参数 +if [ "$#" -gt 1 ]; then + echo "Usage: $0 [dial_folder]" + exit 1 +fi + +# 如果有参数,则处理指定的目录;否则处理所有子目录 +if [ "$#" -eq 1 ]; then + subdirs=("instance/$1/") + if [ ! -d "instance/$1" ]; then + echo "Error: Specified directory 'instance/$1' does not exist." + exit 1 + fi +else + subdirs=(instance/*/) +fi + +for subdir in "${subdirs[@]}"; do + # 提取子目录名称 + dial=$(basename "$subdir") + + # 查找子目录中的 XML 文件并提取文件名 + xml_file=$(find "$subdir" -maxdepth 1 -type f -name "*.xml" -printf "%f\n" | head -n 1) + if [ -z "$xml_file" ]; then + echo "Error: XML file not found in $subdir" + continue + fi + + # 计算文件数量和大小 + dialfilecount=$(find "$subdir" -maxdepth 1 -type f | wc -l) + dialfilesize=$(du -sh "$subdir" | awk '{print $1}') + + # 输出统计信息 + echo "Processing $dial [$dialfilecount files, $dialfilesize size]" + + # 调用 main.py 处理子目录中的文件 + if ! python main.py -dir "$subdir" -output out/; then + echo "Error processing directory $dial" + continue + fi + + # 压缩 .bin 文件到 .lzma 文件 + bin_file="out/${xml_file%.xml}.bin" + lzma_file="dial_lzma/$dial/${xml_file%.xml}.lzma" + + # 创建必要的目录 + mkdir -p "$(dirname "$lzma_file")" + + # 使用 lzma_tool 压缩文件 + if ! ../../code/sdk/tools/bin/lzma_tool/lzma_tool -d12 -lc0 -lp0 e "$bin_file" "$lzma_file"; then + echo " lzma_tool directory $dial error" + else + echo " lzma_tool directory $dial ok" + fi done \ No newline at end of file diff --git "a/tools/dial_converter_tool/make_tools/\350\241\250\347\233\230\345\210\266\344\275\234\350\204\232\346\234\254\344\275\277\347\224\250\350\257\264\346\230\216.md" "b/tools/dial_converter_tool/make_tools/\350\241\250\347\233\230\345\210\266\344\275\234\350\204\232\346\234\254\344\275\277\347\224\250\350\257\264\346\230\216.md" new file mode 100644 index 000000000..93c2c128e --- /dev/null +++ "b/tools/dial_converter_tool/make_tools/\350\241\250\347\233\230\345\210\266\344\275\234\350\204\232\346\234\254\344\275\277\347\224\250\350\257\264\346\230\216.md" @@ -0,0 +1,35 @@ +## 在liunx环境运行表盘脚本 + +# 1.下载对应模块 +pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Pillow + +pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python + +pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib + +## 2.对表盘工具进行赋权限 + +chmod +x gen_dial_bin.sh +./gen_dial_bin.sh + +## 3.制作运行单个表盘 +python ./main.py -dir ./instance/1028/ -output ./out/ + +#使用lzma_tool工具需要赋权限 + chmod +x ../lzma_tool/lzma_tool + + ### 更新版本 0830 +- 制作单个表盘以及lzma文件 **./gen_dial_bin.sh + 表盘文件夹路径** + + ``` + 示例 ./gen_dial_bin.sh ../instance/114/ + ``` + +- 制作所有的表盘以及lzma文件 + + ``` + ./gen_dial_bin.sh + ``` + + + diff --git "a/tools/dial_converter_tool/make_tools/\350\241\250\347\233\230\345\210\266\344\275\234\350\204\232\346\234\254\344\275\277\347\224\250\350\257\264\346\230\216.txt" "b/tools/dial_converter_tool/make_tools/\350\241\250\347\233\230\345\210\266\344\275\234\350\204\232\346\234\254\344\275\277\347\224\250\350\257\264\346\230\216.txt" deleted file mode 100644 index b091aa46d..000000000 --- "a/tools/dial_converter_tool/make_tools/\350\241\250\347\233\230\345\210\266\344\275\234\350\204\232\346\234\254\344\275\277\347\224\250\350\257\264\346\230\216.txt" +++ /dev/null @@ -1,18 +0,0 @@ - -在liunx环境运行表盘脚本 - -#下载对应模块 -pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Pillow - -pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python - -pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib - -chmod +x make_dial.sh -./make_dial.sh - -#制作运行单个表盘 -python ./main.py -dir ./instance/1028/ -output ./out/ - -#使用lzma_tool工具需要赋权限 - chmod +x ../lzma_tool/lzma_tool \ No newline at end of file