8 Commits
Author SHA1 Message Date
zhangyi 419cefd00e update:优化精准训练描边 2026-11-04 16:06:34 +08:00
zhangyi 14f9ccd1ef Merge branch 'feat-shebei' 2026-10-29 16:49:46 +08:00
zhangyi cc8f997600 Merge branch 'feat-shebei' 2026-10-29 16:12:55 +08:00
zhangyi a81494973c Merge branch 'feat-shebei' 2026-10-29 15:08:27 +08:00
zhangyi f3fab17687 update:过滤图片 2026-10-29 14:54:00 +08:00
zhangyi d22d958215 Merge branch 'feat-mendian' 2026-10-29 10:05:02 +08:00
zhangyi b4ed13d2b5 Merge branch 'feat-training' 2026-10-29 09:57:48 +08:00
zhangyi b8b0ab4005 Merge branch 'feat-shebei' 2026-10-29 09:57:07 +08:00
6 changed files with 60 additions and 41 deletions
+8 -4
View File
@@ -4,10 +4,6 @@
"libVersion": "3.7.7",
"packOptions": {
"ignore": [
{
"type": "folder",
"value": "static/coin"
},
{
"type": "file",
"value": "static/common/dialog-light.png"
@@ -247,6 +243,14 @@
{
"type": "folder",
"value": "static/training-difficulty-design"
},
{
"type": "folder",
"value": "static/coin"
},
{
"type": "folder",
"value": "static/home-device"
}
],
"include": []
+3 -1
View File
@@ -164,6 +164,8 @@ const defaultHighlightStyle = {
color: "rgba(255, 228, 0, 0.6)",
strokeColor: "rgba(254, 216, 71, 0.82)",
lineWidthRatio: 0.003,
// 在最小线宽计算后应用倍数,确保不同靶面尺寸下按比例加粗。
lineWidthScale: 1,
};
// 合并默认靶纸样式和外部传入样式,ringColors 单独深合并。
@@ -319,7 +321,7 @@ const drawSectorHighlight = (
(angles.endAngle - angles.startAngle) * safeRevealProgress,
style.color,
style.strokeColor,
Math.max(1, targetRadius * style.lineWidthRatio)
Math.max(1, targetRadius * style.lineWidthRatio) * style.lineWidthScale
);
});
};
+8 -4
View File
@@ -55,10 +55,6 @@
"appid" : "wxa8f5989dcd45cc23",
"packOptions" : {
"ignore" : [
{
"type" : "folder",
"value" : "static/coin"
},
{
"type" : "file",
"value" : "static/common/dialog-light.png"
@@ -298,6 +294,14 @@
{
"type" : "folder",
"value" : "static/training-difficulty-design"
},
{
"type" : "folder",
"value" : "static/coin"
},
{
"type" : "folder",
"value" : "static/home-device"
}
]
},
+15
View File
@@ -21,6 +21,9 @@
{
"path": "pages/audio-test"
},
{
"path": "pages/calibration"
},
{
"path": "pages/about-us"
},
@@ -57,6 +60,12 @@
{
"path": "pages/match-page"
},
{
"path": "pages/my-device"
},
{
"path": "pages/device-intro"
},
{
"path": "pages/user"
},
@@ -98,6 +107,12 @@
},
{
"path": "pages/mine-bow-data"
},
{
"path": "pages/ota-wifi",
"style": {
"navigationStyle": "custom"
}
}
],
"globalStyle": {
@@ -546,6 +546,7 @@ onBeforeUnmount(() => {
:showCrosshair="false"
:showRingLabels="false"
:highlightOnly="true"
:highlightStyle="{ strokeColor: '#00fffc', lineWidthScale: 3 }"
:sectorCount="sectorCount"
:activeSector="activeSector"
:activeRings="activeRings"
+9 -16
View File
@@ -93,36 +93,30 @@ function createWebSocket(token, onMessage) {
"/addons/shoot/otaResult",
];
if (passthroughEvents.includes(event)) {
if (
(code == null || Number(code) === 0) &&
onMessage &&
data &&
typeof data === "object"
) {
if ((code == null || Number(code) === 0) && onMessage && data && typeof data === "object") {
onMessage({ event, data, code, timestamp });
}
return;
}
if (!data || typeof data !== "object") return;
if (data.type) {
if (data?.type) {
if (ENABLE_REALTIME_MESSAGE_LOG) {
console.log("收到 WebSocket 消息", getMessageTypeName(data.type));
}
if (onMessage) onMessage({ ...(data.data || {}), type: data.type });
return;
}
if (!Array.isArray(data.updates)) return;
if (onMessage) onMessage(data.updates);
const firstMessage = data.updates[0];
if (firstMessage && ENABLE_REALTIME_MESSAGE_LOG) {
const updates = Array.isArray(data?.updates) ? data.updates : [];
if (!updates.length) return;
if (onMessage) onMessage(updates);
const msg = updates[0];
if (msg) {
if (ENABLE_REALTIME_MESSAGE_LOG) {
console.log(
"收到 WebSocket 更新",
getMessageTypeName(firstMessage.constructor),
getMessageTypeName(msg.constructor),
{ updateCount: data.updates.length }
);
}
data.updates.forEach((msg) => {
if (msg) {
if (msg.constructor === MESSAGETYPES.RankUpdate) {
uni.setStorageSync("latestRank", msg.lvl);
} else if (msg.constructor === MESSAGETYPES.LvlUpdate) {
@@ -136,7 +130,6 @@ function createWebSocket(token, onMessage) {
}
}
});
});
socketTask.onError((err) => {
if (socket !== socketTask) return;