尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
HarmonyOS应用《玄象》开发实战:SolarTerms.ets 节气交接时刻计算(用于换月定限)
阅读时长约 18 分钟 | 难度★★★★☆ | 篇章第 6 篇 · 命理八字模块 对应源码entry/src/main/ets/common/utils/SolarTerms.ets前言节气交接时刻是八字排盘中“换月“的关键依据——命理中的“月柱“以节气划分而非农历月份。玄象项目通过SolarTerms.ets工具类计算 24 节气的日期与时刻确保月柱排定的准确性。本篇将深入剖析玄象项目节气算法的实现从节气数据常量、节气日期计算、节气名称映射到节气在八字排盘中的应用。掌握这套节气计算算法您就能为任何 HarmonyOS 应用接入传统历法中的节气功能。提示八字排盘中的“月柱“以节气为界而非公历月份。例如立春之后出生的八字才属新的一年。一、节气数据1.1 节气名称static readonly SOLAR_TERMS: string[] [ 立春, 雨水, 惊蛰, 春分, 清明, 谷雨, 立夏, 小满, 芒种, 夏至, 小暑, 大暑, 立秋, 处暑, 白露, 秋分, 寒露, 霜降, 立冬, 小雪, 大雪, 冬至, 小寒, 大寒 ];二、节气日期计算2.1 近似计算static getSolarTermDate(year: number, termIndex: number): { month: number, day: number } { // 基于多年平均值的近似计算 const baseDates [ [2, 4], [2, 19], [3, 6], [3, 21], [4, 5], [4, 20], [5, 6], [5, 21], [6, 6], [6, 21], [7, 7], [7, 23], [8, 7], [8, 23], [9, 8], [9, 23], [10, 8], [10, 23], [11, 7], [11, 22], [12, 7], [12, 22], [1, 6], [1, 20] ]; const [month, day] baseDates[termIndex]; return { month, day }; }三、节气在八字排盘中的应用3.1 月柱判定static getMonthForBazi(year: number, month: number, day: number): number { const termIndex (month - 1) * 2; // 该月对应的节气起始索引 const termDate this.getSolarTermDate(year, termIndex); if (day termDate.day) { return month; // 已过节气属本月 } return month - 1; // 未过节气属上月 }四、节气算法设计总结4.1 数据流SolarTerms.ets ↓ 节气计算 BaziInputPage → 月柱排定 ↓ 节气日期 SolarTermsPage → 节气展示总结本篇以玄象项目SolarTerms.ets为蓝本深入剖析了节气计算算法的实现从节气数据常量、节气日期计算、节气名称映射到节气在八字排盘中的应用。掌握这套节气计算算法您就能为任何 HarmonyOS 应用接入传统历法中的节气功能。如果这篇文章对你有帮助欢迎点赞、收藏⭐、关注你的支持是我持续创作的动力相关资源二十四节气wikipedia.org/wiki/二十四节气开源鸿蒙跨平台社区https://openharmonycrossplatform.csdn.net
RELATED

相关推荐

HarmonyOS应用《玄象》开发实战:CastDivinationPage 起卦页:六爻动变算法 + 18 次三变法模拟

HarmonyOS应用《玄象》开发实战:CastDivinationPage 起卦页:六爻动变算法 + 18 次三变法模拟

阅读时长:约 20 分钟 | 难度:★★★★★ | 篇章:第 5 篇 周易易学模块 对应源码:entry/src/main/ets/pages/yijing/CastDivinationPage.ets 前言 起卦是《周易》占卜的核心环节。玄象项目通过 CastDivinationPage 模拟传统“…

📅 2026/8/22 20:25:38
基于CNN的森林火灾实时检测系统设计与优化

基于CNN的森林火灾实时检测系统设计与优化

1. 项目背景与核心价值 森林火灾是全球范围内最具破坏性的自然灾害之一。传统的人工巡查和卫星监测方式存在响应延迟高、覆盖范围有限等问题。我在本科毕业设计阶段选择这个课题,就是希望探索如何利用现代深度学习技术提升火灾预警效率。 基于卷积神经网络&#xf…

📅 2026/9/8 19:15:59
RKE2集群CIS安全基准配置与实战指南

RKE2集群CIS安全基准配置与实战指南

1. RKE2 集群与 CIS 安全基准概述RKE2(也称为 RKE Government)是 Rancher 实验室开发的下一代 Kubernetes 发行版,专为安全敏感环境设计。与传统 RKE 相比,RKE2 采用 containerd 替代 Docker,并默认启用 CIS&#xff0…

📅 2026/8/22 20:25:39
MORE NEWS

更多资讯

📰

高分辨率示波器如何提升信号完整性分析能力

1. 这不是普通示波器,而是工程师口袋里的“信号显微镜”你有没有遇到过这样的场景:调试一个开关电源,纹波看起来不大,但系统偏偏在特定负载下偶发重启;或者排查一段高速SPI通信,逻辑分析仪显示时序“完全正…

📰

中小企业 AI 落地平台评测:4 个真实案例

中小企业 AI 落地平台评测:4 个真实案例⚠️ 本文客户案例均做脱敏说明,不指代具体客户。“中小企业 AI 落地平台哪家好?”——这是 5-50 人中小企业老板最常问的问题。 但"好不好"是相对的。有人觉得好用,有人觉得一般…

📰

工业 AI 落地:3 个工厂的真实路径

工业 AI 落地:3 个工厂的真实路径⚠️ 本文客户案例均做脱敏说明,不指代具体客户。“工业 AI 落地”——这是 2026 年制造业老板最关心的话题,没有之一。 但"工业 AI"是个特别容易被夸大的词。真正的工业 AI,不是"…

📰

智能体可视化设计用哪家:3 类工具对比

智能体可视化设计用哪家:3 类工具对比⚠️ 以下对比基于公开资料整理,不构成选型建议。“智能体可视化设计用哪家?”——这是 2026 年中小企业老板 产品经理最常问的问题之一。 "智能体"和"可视化设计"这两个词都很热&a…

📰

Python运维相关的笔试题及答案

笔试题及答案项目代码本文档是一套笔试题库, 其中包含详细答案, 题型包含选择题, 解答题以及编程题, 全面覆盖了基础知识点。2023年《网络建设与运维》国赛脚本文件及导出答案视频需要参赛的人员要对最少一种脚本语言做到熟悉, 并且能够领会脚本里和网络有关的指令, 从而迅速地…

📰

SSD1306 OLED驱动实战:从Adafruit库到局部刷新优化

简介:Adafruit SSD1306驱动库是为SSD1306 OLED显示模块设计的开源库,主要面向Arduino、ESP8266等微控制器开发者,其核心优势在于用简洁API替代复杂的底层寄存器操作,让用户无需深入理解驱动原理即可实现文本、图形、图像与动画显示…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬