【小沐学GIS】基于Rust绘制三维数字地球Earth(Rust、OpenGL、GIS)

🍺三维数字地球GIS系列相关文章如下🍺:
1【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、glfw、glut)第一期
2【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、glfw、glut)第二期
3【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、glfw、glut)第三期
4【小沐学GIS】基于C++绘制三维数字地球Earth(QT、OpenGL、GIS)第四期
5【小沐学GIS】基于C++绘制三维数字地球Earth(QT、OpenGL、GIS、Satellite、卫星轨道模拟)第五期
6【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、GIS、SolarSystem、太阳系模拟)第六期
7【小沐学GIS】基于C++OpenSceneGraph绘制三维数字地球Earth(OpenGL、OSG)
8【小沐学GIS】基于C#绘制三维数字地球Earth(OpenGL)
9【小沐学GIS】基于Python绘制三维数字地球Earth(OpenGL)
10【小沐学GIS】基于Android绘制三维数字地球Earth(OpenGL)
11【小沐学GIS】基于WebGL绘制三维数字地球Earth(OpenGL)
12【小沐学GIS】基于Golang绘制三维数字地球Earth(Go、OpenGL、GIS)
13【小沐学GIS】基于Rust绘制三维数字地球Earth(Rust、OpenGL、GIS)
14【小沐杂货铺】基于Three.JS绘制三维数字地球Earth(GIS 、WebGL、vue、react)
15【小沐杂货铺】基于Three.JS绘制三维太阳系Solar System(GIS 、three.js、WebGL)第一期
16【小沐杂货铺】基于Three.JS绘制三维太阳系Solar System(GIS 、three.js、WebGL)第二期
17【小沐杂货铺】基于Three.JS绘制卫星模拟Satellite(GIS 、three.js、vue、react)
18【小沐杂货铺】基于Babylon.JS绘制卫星模拟Satellite(GIS 、three.js、vue、react)
19【小沐杂货铺】基于Cesium.JS绘制卫星轨迹Satellite(GIS 、Cesium、vue、react)
🍺Three.JS系列相关文章如下🍺:
1【小沐杂货铺】基于Three.JS绘制汽车展示Car(WebGL、vue、react、autoshow)

文章目录

  • 1、简介
    • 1.1 Rust简介
    • 1.2 Rust安装
    • 1.3 Rust入门例子
      • 1.3.1 入门例子1
      • 1.3.2 入门例子2
  • 2、代码测试
  • 2.1 代码1
  • 结语

1、简介

1.1 Rust简介

https://www.rust-lang.org/zh-CN/learn/get-started
Rust 是一种由 Mozilla 主导开发的高性能编译型编程语言,首次发布于 2010 年。Rust 语言的设计原则是安全、并发、实用,并且支持多种编程范式,包括函数式、并发式、过程式和面向对象风格。
在这里插入图片描述

Rust的具体语法和C,C++类似,都是由花括号限定代码块,还有一样的控制流关键字,例如if,else,while,和for。然而也并非所有的C或者C++关键字被实现了。某些Rust函数(比如关键字match用于模式匹配)对于那些精通这些语言的人就没那么熟悉了。尽管与C/C++极其相似,Rust在深层语法上跟元语言家族的语言像是Haskell更接近。基本上一个函数体的每个部分都是表达式,甚至是控制流操作符。例如,那个普通的if表达式也取代了C的三元表达式。一个函数不需要以return表达式结束,在这种情况下函数最后的表达式就是返回值。

1.2 Rust安装

在这里插入图片描述
Windows 要下载 rustup-init.exe 可执行文件。
下载好的 Rustup 在 Windows 上是一个可执行程序 rustup-init.exe。
在这里插入图片描述
输入命令,测试一下是否安装成功:
在这里插入图片描述

1.3 Rust入门例子

1.3.1 入门例子1

第一个 Rust 程序,Rust 语言代码文件后缀名为 .rs, 如 hello.rs。

fn main() {println!("Hello World!");
}

使用 rustc 命令编译 hello.rs 文件:

rustc hello.rs

编译后会生成 hello.exe的可执行文件。
在这里插入图片描述

1.3.2 入门例子2

第二个 Rust 程序,使用cargo进行项目构建。
同时在src文件夹下的main.rs添加代码如下。

fn main() {println!("Hello World!");
}
cargo new yxy_rust
cd yxy_rust
cargo build 
cargo run 

在这里插入图片描述
至此,你成功的构建了2个 Rust 命令行程序!

2、代码测试

2.1 代码1

代码编号:C16_1_GIS_3dEarth_Rust
关键词:地球绘制,多种纹理贴图,Shader着色
在这里插入图片描述
在这里插入图片描述

结语

如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;╮( ̄▽ ̄)╭
如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???
如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)
感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!

如需源代码,请加文章末尾的QQ!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/915423.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/915423.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ARM 学习笔记(三)

参考文献:《ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition》《ARM Cortex-A (ARMv7-A) Series Programmer’s Guide》1、内存类型 ARMv7-A 处理器中,将 Memory 定义为几种类型(Memory Type): Strong…

Flask 框架(一):核心特性与基础配置

目录 一、为什么选择 Flask? 二、Flask 核心概念与初始化 2.1 程序实例初始化 2.2 运行配置:app.run () 参数详解 2.3 应用配置:三种参数设置方式 1. 字典直接配置(简单临时场景) 2. 配置文件导入(生…

社交圈子系统开源社交源码 / 小程序+H5+APP 多端互通的底层技术分析

伴随社交产品向“圈子化”、“内容驱动”发展方向演进,打造一套支持小程序、H5、APP 互通的社交圈子系统,已经成为构建垂直社区的基础架构能力要求。本文围绕一套典型的多端社交兴趣平台(即友猫社区平台)的设计实践,对…

gitlab-runner配置问题记录

引言 笔者曾通过2种方式部署过 gitlab-runner,在 gitlab 中使用这个 runner 拉起 ci job 的过程中或多或少遇到些问题,主要都是 job 中无法访问宿主机的docker 等组件。本篇文档主要记录 gitlab-runner 安装及相关配置。 二进制部署 gitlab-runner 部署 …

每日面试题10:令牌桶

令牌桶算法:优雅的流量控制艺术在现代分布式系统中,流量控制如同交通信号灯般重要——它既不能让请求"堵死"系统,也不能放任流量"横冲直撞"。令牌桶算法(Token Bucket Algorithm)正是这样一种精妙…

【java】消息推送

文章目录Java网页消息推送解决方案 短轮询、长轮询、SSE、Websocket

STM32 | 有源蜂鸣器响,无源蜂鸣器播音乐

目录 Overview 有源蜂鸣器 无源蜂鸣器 有源蜂鸣器控制 GPIO配置 控制程序 无源蜂鸣器控制 反转GPIO控制 GPIO配置 控制接口 PWM控制 GPIO配置 控制函数 改变频率播音乐 原理 1. 频率决定音调 2. 占空比决定音量 GPIO初始化 结构体定义和音符频率表 播放接口 …

第十四章 gin基础

文章目录Gin快速搭建一个web服务Gin数据交互JSON串内容规范Gin使用结构体返回数据给前端Gin配置POST类型的路由Gin获取GET请求参数Gin获取POST请求参数-form-data类型Gin获取POST请求参数-JSON类型Gin获取参数绑定至结构体Gin快速搭建一个web服务 下载包 \\新建一个文件&…

Baumer工业相机堡盟工业相机如何通过YoloV8的深度学习模型实现PCB的缺陷检测(C#代码,UI界面版)

Baumer工业相机堡盟工业相机如何通过YoloV8的深度学习模型实现PCB的缺陷检测(C#代码,UI界面版)工业相机使用YoloV8模型实现PCB的缺陷检测工业相机实现YoloV8模型实现PCB的缺陷检测的技术背景在相机SDK中获取图像转换图像的代码分析工业相机图…

【Vivado那些事儿】AMD-XILINX 7系列比特流加密

前提:加密有风险,操作需谨慎前言在许多项目中,经过漫长的等待,我们的 FPGA 设计终于可以投入现场部署了。前期的资金的投入及知识产权的保护,我们需要对现场部署的 FPGA 进行比特流保护以防止逆向工程和未经授权的重复…

RK3588 安卓adb操作

adb(Android Debug Bridge)是一个用于与安卓设备进行通信和控制的工具。adb可以通过USB或无线网络连接安卓设备,执行各种命令,如安装和卸载应用,传输文件,查看日志,运行shell命令等。adb是安卓开…

【华为机试】70. 爬楼梯

文章目录70. 爬楼梯描述示例 1示例 2提示解题思路核心分析问题建模算法实现方法1:动态规划(标准解法)方法2:空间优化动态规划(最优解)方法3:递归 记忆化方法4:数学公式(…

山东大学软件学院面向对象期末复习

面向对象 文章目录面向对象04 类封装接口 抽象类05 消息,实例化,静态变量方法消息动/静态类型语言对象创建类及实例具有下面特征对象数组的创建静态数据成员构造函数06_0 继承继承是向下传递的JAVA为什么不支持多重继承继承的形式特殊化继承替换原则规范…

让 Windows 用上 macOS 的系统下载与保姆级使用教程

模拟苹果桌面软件下载:https://xpan.com.cn/s/8NFAGT 还记得 Windows 11刚发布时,很多人就说“果里果气"的,但界面确实做的漂亮。 不知道现在有多少小伙伴正用着macOS,不过我敢确定,喜欢macOS的人绝对不少&#…

嵌入式硬件篇---继电器

继电器是一种通过小电流控制大电流的电磁开关,广泛应用于自动化控制、电力系统和电子设备中。以下从工作原理、应用场景和电路特点三个方面详细介绍:一、工作原理继电器本质是电磁控制的机械式开关,核心部件包括:线圈(…

鸿蒙网络编程系列58-仓颉版TLS数字证书查看及验签示例

1. TLS数字证书验签简介 数字证书的签名验证是网络编程中一个重要的功能,它保证了数字证书是由可信任的签发方签署的,在此基础上,我们才可以信任该证书,进而信任基于该证书建立的安全通道,所以说,数字证书…

【React Native】安装配置 Expo Router

过去开发React Native,所使用的路由都是React Navigation。但是这个东西使用起来非常困难,配置无比繁琐。Expo,为了简化操作,就基于React Navigation开发了Expo Router。 Expo Router用起来就要简单的多了,配置也相对…

美国VPS服务器Linux内核参数调优的实践与验证

美国vps服务器Linux内核参数调优的实践与验证在云计算和虚拟化技术日益普及的今天,美国VPS服务器因其稳定的网络环境和优越的性价比,成为众多企业和开发者的首选。Linux内核参数的默认配置往往无法充分发挥VPS的性能潜力。本文将深入探讨美国VPS服务器上…

在Vscode中使用Kimi K2模型:实践指南,三分钟生成个小游戏

Kimi K2是一款基于多专家(MoE)架构的强大代码与代理能力基础模型。本文将通过在VS Code及其扩展Cline和RooCode中的实际应用,详细说明如何使用Kimi K2-0711-preview模型。不得不说kimi这次的K2模型就是强大,在vscode中配置使用体验…

基于SpringBoot+Uniapp球场预约小程序(腾讯地图API、Echarts图形化分析、二维码识别)

“ 🎈系统亮点:腾讯地图API、Echarts图形化分析、二维码识别”01系统开发工具与环境搭建前后端分离架构 项目架构:B/S架构 运行环境:win10/win11、jdk17前端: 技术:框架Vue.js;UI库:…