当前位置: 首页 > news >正文

纯go语言ui框架之高级组件:第85个组件3D地球

纯go语言实现flutter风格桌面GUI框架:ui

1、支持windows 、linux、unix、masOS、ios、android等操作系统
2、代码风格和flutter基本差不多,如果会flutter和go语言无缝切换上手,如果熟悉go语言很快上手。
3、框架有上100个组件,足以支持绝大部复杂应用
4、支持
1)手动刷新ui
2)定时更新ui
3)指定时间范围实时刷新ui
4)手动开启实时刷新ui和手动关闭实时刷新ui
5)全局实时刷新
————————————————

1、纯go语言ui框架第85个组件:3D地球

这个是可以旋转的3D地球
完整代码

packagemainimport("fmt""image"_"image/jpeg"_"image/png""os""render/layout""render/widget/material""ui""echart/chart3d""echart/glchart")funcmain(){globe:=glchart.NewGlobe3DGL(-1,-1)globe.SetLightDir(chart3d.Vec3{X:0.7,Y:0.3,Z:0.5})globe.Camera.SetZoomRange(0.05,500)// 最小放大1.5倍,最大缩小100倍// 加载地球纹理 earth.jpgifimg,err:=loadTexture("earth.jpg");err==nil{globe.SetTexture(img)fmt.Println("已加载地球纹理: earth.jpg")}elseifimg,err:=loadTexture("earth.png");err==nil{globe.SetTexture(img)fmt.Println("已加载地球纹理: earth.png")}else{fmt.Println("未找到 earth.jpg/earth.png,使用程序生成纹理")}// 加载星空背景 starfield.jpgifimg,err:=loadTexture("starfield.jpg");err==nil{globe.SetBackground(img)fmt.Println("已加载星空背景: starfield.jpg")}elseifimg,err:=loadTexture("starfield.png");err==nil{globe.SetBackground(img)fmt.Println("已加载星空背景: starfield.png")}else{fmt.Println("未找到 starfield.jpg/starfield.png,无背景")}fmt.Println("GL 3D 地球 — GPU 硬件加速渲染(拖拽旋转,滚轮缩放)")app:=ui.NewApp("3D 地球",700,700)app.SetRoot(ui.WidgetFunc(func(gtx layout.Context,th*material.Theme)layout.Dimensions{returnglobe.Layout(gtx,th)}))app.Run()}// loadTexture 加载纹理图片funcloadTexture(pathstring)(image.Image,error){f,err:=os.Open(path)iferr!=nil{returnnil,err}deferf.Close()img,_,err:=image.Decode(f)returnimg,err}

效果:

http://www.jsqmd.com/news/1094271/

相关文章:

  • 你的企业智能体安全吗?答案藏在一个你想不到的地方
  • SQL注入攻防全解析:从原理到实战的Web安全必修课
  • 内存条全解析:颗粒、时序、带宽一文看懂,新手入门必看
  • 【Springboot毕设全套源码+文档】springboot基于人脸识别的智慧医疗预约挂号平台的设计与实现(丰富项目+远程调试+讲解+定制)
  • 全球首批 AI Worker 上岗:星尘浩宇海外金融审核项目稳定运行 300 天
  • 接口自动化测试实战:Postman+Newman+Jenkins从入门到落地
  • 2026年,你的生意还没接入AI微入口小程序吗?
  • 音频转乐谱工具有哪些?2026五款 AI 扒谱工具横向测评
  • Windows 11 文件资源管理器提速教程:KB5095093 更新后如何手动启用新功能
  • Performance-Fish完整实用指南:三步实现RimWorld性能飞跃
  • Anthropic语义压缩层解析:当AI推理链路开始不可逆蒸馏
  • PNG图片隐藏XSS攻击:原理、构造与防御实战
  • 轻量化趋势下铝合金锻件在新能源汽车中的 5 大应用场景与技术突破
  • TrollInstallerX终极指南:3分钟完成iOS TrollStore快速安装的完整教程
  • 低查重AI教材编写攻略:利用AI工具轻松打造优质教材
  • Z向性能钢板怎么选?解决厚板焊接撕裂问题供应商
  • MonkeyCode云环境完全指南:零配置开发的正确姿势
  • Agent 记不住业务数据?用 Store 给它加个“笔记本“!
  • PostgreSQL 和 MySQL InnoDB:主键索引到底需不需要“回表”?
  • 门店拓客拉新小程序管理系统
  • MonkeyCode容器化部署实战:从Dockerfile到Kubernetes上云
  • 二十年保险法律执业三段履历完整客观梳理
  • 计算机毕业设计之基于深度学习的商品结算系统的设计与实现
  • 痛点场景还原:一个具体的例子
  • DeepPCB:1500对图像数据集,开启PCB缺陷检测的AI时代
  • 嵌入式事件驱动架构:硬件自动化如何解放CPU并提升实时性
  • 【计算机毕业设计】Harcend学习网站的设计与实现
  • 计算机毕业设计之东北特产网上商城的设计与实现
  • 把 Agent 效果从 “感觉” 变成 “可验证”
  • GPT-4稀疏激活原理:MoE架构与动态路由技术解析