实战篇(九):解锁3D魔方的秘密:用Processing编程实现交互式魔方
解锁3D魔方的秘密:用Processing编程实现交互式魔方
- 使用 Processing 创建一个 3D 魔方
- 效果展示
- 1. 安装 Processing
- 2. 项目结构
- 3. 代码实现
- 4. 代码解释
- 4.1. 初始化魔方
- 4.2. 绘制魔方
- 4.3. 处理鼠标事件
- 4.4. 检查点击的面
- 4.5. 旋转面和最终确定旋转
- 5. 运行和测试
- 6. 细节解释
- 6.1. 半透明背景
- 6.2. 旋转角度的更新
- 6.3. 鼠标事件的处理
- 7. 结语
使用 Processing 创建一个 3D 魔方
在本教程中,我们将使用 Processing 编程语言创建一个可视化的3D魔方,并实现旋转和点击交互功能。通过这个项目,你将学习如何使用 Processing 的 3D 绘图功能、处理鼠标事件以及旋转几何体。
效果展示
1. 安装 Processing
首先,你需要在你的计算机上安装 Processing。你可以从 Processing 官方网站 下载并安装最新版本。
2. 项目结构
为了创建一个 3D 魔方,我们需要以下结构:
- 初始化魔方的颜色
- 绘制魔方
- 响应鼠标事件(点击和拖动)
3. 代码实现
下面是完整的代码实现:
int[][
相关文章:

实战篇(九):解锁3D魔方的秘密:用Processing编程实现交互式魔方
解锁3D魔方的秘密:用Processing编程实现交互式魔方 使用 Processing 创建一个 3D 魔方效果展示1. 安装 Processing2. 项目结构3. 代码实现4. 代码解释4.1. 初始化魔方4.2. 绘制魔方4.3. 处理鼠标事件4.4. 检查点击的面4.5. 旋转面和最终确定旋转5. 运行和测试6. 细节解释6.1. …...

Android系统上常见的性能优化工具
Android系统上常见的性能优化工具 在Android系统开发中,性能优化是一个重要的任务,有许多工具可以帮助你进行各种方面的性能分析和优化。以下是一些常见的Android性能优化工具及其用途和使用方法: 1. Android Studio Profiler 功能: 提供CP…...

TG创建小程序交互APP登录以及机器人信息
1、搜索 BotFather ,输入命令 /newbot 创建机器人。 2、修改机器人信息 /mybots 编辑名称 : 修改机器人名称 编辑关于: 修改关于 hayden yyds,修改以后打开机器人会出现在下图 编辑描述 : 机器人的描述 编辑描述图片 : 机器人的图片 编辑 Botpic…...

探索大模型能力--prompt工程
1 prompt工程是什么 1.1 什么是Prompt? LLM大语言模型终究也只是一个工具,我们不可能每个人都去训一个大模型,但是我们可以思考如何利用好大模型,让他提升我们的工作效率。就像计算器工具一样,要你算10的10倍&#x…...

【经验分享】运用云服务器实现挂机手机网课的操作,部分手机软件适用
目录 第一步下载手机模拟器 第二步找到模拟器的文件位置 第三步找到模拟器的下载文件进行打包处理 编辑 第四步将模拟器粘贴到云服务器上 第五步运行程序 第六步在模拟器中下载网课软件 第一步下载手机模拟器 这里我下载的是联想模拟器,用来模拟手机环境 随…...

【从0到1进阶Redis】主从复制 — 主从机宕机测试
上一篇:【从0到1进阶Redis】主从复制 测试:主机断开连接,从机依旧连接到主机的,但是没有写操作,这个时候,主机如果回来了,从机依旧可以直接获取到主机写的信息。 如果是使用命令行,来…...

Flask启动5000端口后关不掉了?
事情是这样的: 使用python app.py启动flask应用后,又启动了另一个flask测试应用,也能启动成功,也没有报设么端口冲突,关闭黑窗口后,访问还是有守护进程在运行, 为什么我知道5000还在运行&#…...

Redis的热key解决
1、Redis热Key会带来哪些问题 1、流量集中,达到物理网卡上限。 当某一热点 Key 的请求在某一主机上超过该主机网卡上限时,由于流量的过度集中,会导致服务器中其它服务无法进行。 2、请求过多,缓存分片服务被打垮。 如果热点过于…...

在linux中查找 / 目录下的以.jar结尾的文件(find / -name *.jar)
文章目录 1、查找 / 目录下的以.jar结尾的文件 1、查找 / 目录下的以.jar结尾的文件 [rootiZuf6332h890vozldoxcprZ ~]# find / -name *.jar /etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.342.b07-1.el9_0.x86_64/lib/security/policy/limited/US_export_policy.ja…...

【Python爬虫教程】第6篇-使用session发起请求
为什么要使用session 前面介绍了如何使用reqesuts发起请求,今天介绍如何使用session发起请求。session简单理解就是一种会话机制,在浏览器中我们登录完之后,后面再请求服务数据都不需要再登录了,以为Cookie里已经保存了你的会话状…...

【Hot100】LeetCode—763. 划分字母区间
目录 题目1- 思路2- 实现⭐763. 划分字母区间——题解思路 3- ACM 实现 题目 原题连接:763. 划分字母区间 1- 思路 思路 目标:同样的字母 字符串尽可能的长 问1:怎么确定字母数 ——> 哈希表问2:怎么让字符尽可能的长&#…...

分布式服务基于Zookeeper的分布式锁的实现
一、序言 ZooKeeper 的分布式锁机制是一种协调多个客户端访问共享资源的方法。通过使用 ZooKeeper 的持久化节点和临时顺序节点,可以实现高效且可靠的分布式锁。下面是分布式锁的工作原理以及如何使用它的具体步骤。 二、Zookeeper分布式锁的核心原理 创建锁目录节…...

Rust编程-I/O
文件读取: 依赖:标准库中use std::fs; 模块 读取文件:fs::read_to_string(filepath:string) -> Result<String> String是文件内容 下面代码来自《Rust权威指南》,主要作用是从文件中检索,并返回检索内容所在的行…...

FastAPI 学习之路(四十七)WebSockets(三)登录后才可以聊天
之前我们是通过前端自动生成的token信息,这次我们通过注册登录,保存到本地去实现。首先,我们实现一个登录页面,放在templates目录下。 <!DOCTYPE html> <html lang"en"> <head><meta charset&quo…...

数据结构—链式二叉树-C语言
代码位置:test-c-2024: 对C语言习题代码的练习 (gitee.com) 一、前言: 在现实中搜索二叉树为常用的二叉树之一,今天我们就要通过链表来实现搜索二叉树。实现的操作有:建二叉树、前序遍历、中序遍历、后序遍历、求树的节点个数、求…...

nginx代理gitee
背景 若干台agv设备,这些设备都是没有公网的(无法访问百度等)。 一台服务器(ubuntu20.04)有线可以公网,无线可以实现内部通信(agv,plc等设备)。 目的 agv每一次更新代码,拉取代码等都需要切换到有公网的网络,多台agv设…...

一款IM即时通讯聊天系统源码,包含app和后台源码
一款IM即时通讯聊天系统源码 聊天APP 附APP,后端是基于spring boot开发的。 这是一款独立服务器部署的即时通讯解决方案,可以帮助你快速拥有一套自己的移动社交、 企业办公、多功能业务产品。可以 独立部署!加密通道!牢牢掌握通…...

Camunda如何通过外部任务与其他系统自动交互
文章目录 简介流程图外部系统pom.xmllogback.xml监听类 启动流程实例常见问题Public Key Retrieval is not allowed的解决方法java.lang.reflect.InaccessibleObjectException 流程图xml 简介 前面我们已经介绍了Camunda的基本操作、任务、表: Camunda组件与服务与…...

Django ORM中ExpressionWrapper的用途
ExpressionWrapper 在 Django ORM 中,直接在 filter 方法中进行字段间的比较时,不能直接使用算术运算符(如 、-、*、/)来操作 F 对象,需要使用 ExpressionWrapper 来包装表达式并指定输出字段类型。 使用Q对象&#…...

什么软件修复视频画质比较好,视频画质修复工具
有些视频中可能会出现噪点、残影、颜色失真等问题,导致观看时体验感不太好,修复视频画质可以去除这些问题,使视频更加干净、清晰和真实。 高质量的视频画质能够提高观众的观看体验,让观众更加享受观看视频的过程。特别是在需要展示…...

效能工具:执行 npm start 可直接切换proxy代理UR后直接启动项目
1) 背景: 我们项目是2个前端3个后端的配置。前端和每个后端都有需要调试的接口。 因此经常切换vite.congig.js中的proxy后端代理链接,是挺麻烦的。 于是我研究如何能快速切换后端URL,所幸懒人有懒福,我找到了Inquirer 和 fs, 实…...

MongoDB自学笔记(一)
一、MongoDB简介 MongoDB是一款基于C开发的文档型数据库。与传统的关系型数据库有所不同,MongoDB面向的是文档,所谓的文档是一种名为BSON (Binary JSON:二进制JSON格式)是非关系数据库当中功能最丰富,最像…...

【AIGC】二、mac本地采用GPU启动keras运算
mac本地采用GPU启动keras运算 一、问题背景二、技术背景三、实验验证本机配置安装PlaidML安装plaidml-keras配置默认显卡 运行采用 CPU运算的代码step1 先导入keras包,导入数据cifar10,这里可能涉及外网下载,有问题可以参考[keras使用基础问题…...

【Qt】使用临时对象的坑
前言 使用临时对象时,一定要注意临时对象析构后是否会对代码造成影响,下面是一些可能出现的错误 std::string Widget::getStr() {return "nihao"; }void Widget::on_pushButton_clicked() {std::string objStr getStr();const char* str g…...

Apache-Flink未授权访问高危漏洞修复
漏洞等级 高危漏洞!!! 一、漏洞描述 攻击者没有获取到登录权限或未授权的情况下,或者不需要输入密码,即可通过直接输入网站控制台主页面地址,或者不允许查看的链接便可进行访问,同时进行操作。 二、修复建议 根据业务/系统具体情况,结合如下建议做出具体选择: 配…...

Unable to obtain driver using Selenium Manager: Selenium Manager failed解决方案
大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

(01)Unity使用在线AI大模型(使用百度千帆服务)
目录 一、概要 二、环境说明 三、申请百度千帆Key 四、使用千帆大模型 四、给大模型套壳 一、概要 在Unity中使用在线大模型分为两篇发布,此篇文档为在Python中使用千帆大模型,整体实现逻辑是:在Python中接入大模型—>发布为可传参的…...

Zed 编辑器发布了原生 Linux 版本
由 Rust 编写、GPU 加速的 Zed 文本编辑器终于提供了正式的 Linux 原生版本!在过去的几个月里,Zed 的 Linux 支持取得了长足的进步,现在已经进入了更正式的阶段。 今天,这款由前 Atom 开发人员创建的现代开源代码编辑器现在在 Li…...

安全入门day01
一、常用名词 1、前后端 (1)前端 前端主要负责用户界面的展示和交互。它通常包括HTML、CSS和JavaScript等技术的使用,也可能使用各种前端框架和库,如React、Vue.js、Angular等,来构建更加复杂和动态的用户界面。前端…...

基于Adaboost的数据分类算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于Adaboost的数据分类算法matlab仿真,分别对比线性分类和非线性分类两种方式。 2.测试软件版本以及运行结果展示 MATLAB2022A版本运行 (完整程序…...