HarmonyOS应用《玄象》开发实战:卦象绘制:阳爻(▔)/ 阴爻(▔▔)的 Canvas 矩形堆叠
阅读时长约 18 分钟 | 难度★★★★☆ | 篇章第 5 篇 · 周易易学模块对应源码entry/src/main/ets/pages/yijing/HexagramsPage.ets、CastDivinationPage.ets前言卦象的爻线是《周易》最基本的视觉符号——阳爻为一条连续横线阴爻为两条断开的横线。玄象项目通过 Canvas 的fillRect矩形堆叠绘制六爻卦象每爻由上下两个半爻组成。本篇将深入剖析玄象项目卦象绘制的实现从阳爻/阴爻的矩形绘制算法、fillRect参数控制、六爻堆叠布局到爻间间距与动爻标记。掌握这套卦象绘制方法论您就能为任何 HarmonyOS 应用绘制完整的六爻卦象。提示玄象项目卦象绘制采用从上到下的堆叠顺序符合传统易学阅读习惯。一、阳爻绘制1.1 阳爻算法privatedrawYangYao(canvas:CanvasRenderingContext2D,x:number,y:number,width:number,height:number):void{canvas.fillStyleColors.PRIMARY_GOLD;canvas.fillRect(x,y,width,height);}二、阴爻绘制2.1 阴爻算法privatedrawYinYao(canvas:CanvasRenderingContext2D,x:number,y:number,width:number,height:number):void{constgapwidth*0.1;// 中间断开间距canvas.fillStyleColors.PRIMARY_GOLD;canvas.fillRect(x,y,(width-gap)/2,height);canvas.fillRect(x(widthgap)/2,y,(width-gap)/2,height);}三、六爻堆叠3.1 六爻绘制privatedrawHexagram(canvas:CanvasRenderingContext2D,yaos:number[],x:number,y:number,width:number):void{constyaoHeight6;constyaoGap4;consttotalHeight6*yaoHeight5*yaoGap;for(leti0;i6;i){constyaoYyi*(yaoHeightyaoGap);if(yaos[i]7||yaos[i]9){// 阳爻this.drawYangYao(canvas,x,yaoY,width,yaoHeight);}else{// 阴爻this.drawYinYao(canvas,x,yaoY,width,yaoHeight);}}}四、动爻标记4.1 动爻高亮privatedrawChangingYao(canvas:CanvasRenderingContext2D,x:number,y:number,width:number,height:number):void{canvas.fillStyle#FF5722;// 动爻用红色标记canvas.fillRect(x-4,y,2,height);}五、卦象绘制设计总结5.1 爻值对照爻值名称绘制方式是否动爻6老阴阴爻是7少阳阳爻否8少阴阴爻否9老阳阳爻是总结本篇以玄象项目卦象绘制为蓝本深入剖析了 Canvas 六爻绘制算法从阳爻/阴爻的fillRect矩形绘制、六爻堆叠布局、爻间间距控制到动爻标记。掌握这套卦象绘制方法论您就能为任何 HarmonyOS 应用绘制完整的六爻卦象。如果这篇文章对你有帮助欢迎点赞、收藏⭐、关注你的支持是我持续创作的动力相关资源HarmonyOS 官方文档CanvasRenderingContext2DHarmonyOS 官方文档fillRect 方法周易六十四卦wikipedia.org/wiki/六十四卦开源鸿蒙跨平台社区https://openharmonycrossplatform.csdn.net

相关新闻

python数据可视化技巧的100个练习 -- 47. 生成客户满意度分析的配对网格图

python数据可视化技巧的100个练习 -- 47. 生成客户满意度分析的配对网格图

重要性★★★★☆ 难度★★★☆☆ 您是一家零售公司的数据分析师。 公司收集了针对其新产品的多维度客户满意度数据。 您的任务是创建一个配对网格图,以可视化不同满意度指标之间的关系。 数据集包括以下变量: 总体满意度(1-10 分) 产品质量(1-10 分) 客户服务(1-1…

2026/8/16 15:59:10 阅读更多 →
HarmonyOS 状态管理 V2 入门:@ComponentV2 与 V1→V2 装饰器全映射

HarmonyOS 状态管理 V2 入门:@ComponentV2 与 V1→V2 装饰器全映射

前言 HarmonyOS 状态管理 V1(Component State)在复杂业务中暴露出两个核心痛点:嵌套对象无法自动感知属性变化(必须借助 Observed/Track)、父子组件通信繁琐(Prop/Link/Provide 语义混乱)。为此…

2026/8/6 4:57:07 阅读更多 →
【JAVA毕设源码分享】基于springboot老人健康信息管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot老人健康信息管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/8/9 20:50:53 阅读更多 →

最新新闻

1美元自制光耦电平转换器:实现3.3V/5V安全隔离与信号转换

1美元自制光耦电平转换器:实现3.3V/5V安全隔离与信号转换

1. 项目缘起:为什么需要光耦电平转换器? 在玩转ESP32、STM32这类微控制器时,你肯定遇到过电平不匹配的烦恼。比如,你的ESP32的GPIO引脚输出是3.3V,但你想驱动一个老旧的5V Arduino Uno,或者控制一个需要5V逻…

2026/8/19 8:55:55 阅读更多 →
Tushare接口文档:北交所新旧代码对照表(bse_mapping)

Tushare接口文档:北交所新旧代码对照表(bse_mapping)

官方文档:https://tushare.pro/document/2?doc_id375功能描述:获取北交所股票代码变更后新旧代码映射表数据返回限量:单次请求最大返回1000行接口权限:2000积分说明:2025年10月9日起,北交所存量股票正式启…

2026/8/19 8:55:55 阅读更多 →
基于RP2040与以太网打造低功耗网络仪表盘:从DVI驱动到Adafruit IO集成

基于RP2040与以太网打造低功耗网络仪表盘:从DVI驱动到Adafruit IO集成

1. 项目概述:一个基于RP2040的桌面级网络仪表盘 最近在捣鼓一个桌面小玩意儿,起因很简单:我工位上的显示器除了写代码,大部分时间都空着,总想让它干点别的。我想实时看到一些网络数据,比如服务器状态、天气…

2026/8/19 8:55:55 阅读更多 →
知网维普万方AI率超标怎么办?10款降AI工具按平台选择!

知网维普万方AI率超标怎么办?10款降AI工具按平台选择!

论文降AI率怎么降?用什么降AI工具靠谱?2026年3月毕业季倒计时开始,知网、维普、万方的AIGC检测算法全面升级,选一款好用的降AI率软件成了每个毕业生的刚需。这篇文章手把手教你怎么选降AI工具、怎么用降AI工具,并实测推…

2026/8/19 8:55:55 阅读更多 →
英文降ai实操教程!教你如何避坑英文降aigc(附多款工具对比)

英文降ai实操教程!教你如何避坑英文降aigc(附多款工具对比)

不少人都体会过这样的情景: ddl 压在头顶,按照指导意见修改完文章,ai率还是特别高。我现在回想起来依旧心累。那段时间我翻遍全网,找 aigc 英文免费查询入口、agic 查看免费英文站点,踩了一堆广告漫天却毫无作用的平台…

2026/8/19 8:55:55 阅读更多 →
论文提交前最后一晚别慌:普通大学生按这6项检查

论文提交前最后一晚别慌:普通大学生按这6项检查

一、最后一晚最怕的不是大改,而是漏检查 很多普通大学生到了论文提交前一晚,状态都差不多:正文改了好几版,导师意见也处理了一部分,文件夹里有终稿、最终版、最终不改版、提交版。越到最后越慌,反而不知道…

2026/8/19 8:54:50 阅读更多 →

日新闻

【单片机课程设计/毕业设计】基于 STM32 与 WiFi 模块的室内通风智能管控系统设计 基于 STM32 的人体存在感知自适应风扇控制系统设计(018503)

【单片机课程设计/毕业设计】基于 STM32 与 WiFi 模块的室内通风智能管控系统设计 基于 STM32 的人体存在感知自适应风扇控制系统设计(018503)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/8/19 0:00:30 阅读更多 →
AI如何驱动数学猜想生成:从大语言模型到自动化数学发现

AI如何驱动数学猜想生成:从大语言模型到自动化数学发现

1. 项目概述:当AI开始“猜”数学定理 最近在AI研究圈里,一个名为“Moonshine”的项目引起了不小的讨论。这名字本身就挺有意思,直译是“月光”,但在数学史上,它特指一个神秘而美丽的联系——魔群月光猜想,连…

2026/8/19 0:00:30 阅读更多 →
WarcraftHelper 魔兽争霸3优化实战指南

WarcraftHelper 魔兽争霸3优化实战指南

WarcraftHelper 魔兽争霸3优化实战指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 一台刚配的新电脑,跑《魔兽争霸3》却卡成 PPT——这…

2026/8/19 0:02:31 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/18 9:15:35 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/18 9:06:28 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/18 9:04:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/19 5:04:55 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/19 7:42:22 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/17 18:55:55 阅读更多 →