From 9f1744708955e2f14284925c20d12ad0486c3f30 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 08 五月 2024 12:59:58 +0800 Subject: [PATCH] # --- src/utils/common.js | 37 ++++++++++++++++++++++++++++++++++--- 1 files changed, 34 insertions(+), 3 deletions(-) diff --git a/src/utils/common.js b/src/utils/common.js index 5c5c8df..6fc9711 100644 --- a/src/utils/common.js +++ b/src/utils/common.js @@ -28,6 +28,21 @@ return (targetTheta - originTheta > 180) ? targetTheta - 360 : targetTheta; } +export const positiveAngle = (angle) => { + return ((angle % 360) + 360) % 360; +} + +export const normalizeAngle = (angle) => { + let newAngle = angle % 360; + + if (newAngle < -180) { + newAngle += 360; + } else if (newAngle > 180) { + newAngle -= 360; + } + return newAngle; +} + export const calculateMappedPosition = (realPos) => { return [ realPos[0] * REAL_COMPARE_MAP_SCALE + REAL_COMPARE_MAP_OFFSET_X, @@ -47,13 +62,13 @@ } }; -export const setColor = (obj) => { +export const setColor = (obj, color = 0x4680BF) => { if (obj.material) { - obj.material.color.set(0x4680BF); + obj.material.color.set(color); } if (obj.children) { obj.children.forEach((child) => { - setColor(child); + setColor(child, color); }); } }; @@ -76,4 +91,20 @@ } } return true; +} + +export const parseLocNo = (locNo) => { + if (!locNo || typeof locNo !== 'string') { + return null; + } + const locParseArr = locNo.split('-'); + return { + row: Number(locParseArr?.[0]), + bay: Number(locParseArr?.[1]), + lev: Number(locParseArr?.[2]), + } +} + +export const generateLocNo = (row, bay, lev) => { + return row + '-' + bay + '-' + lev; } \ No newline at end of file -- Gitblit v1.9.1