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

Three 笔记

一:常用函数封装

1、实例化three 场景、相机、渲染器
import * as THREE from 'three';/*** 实例化three 场景、相机、渲染器* @param container: dom容器 * @param fov: 视野角度 * @param near: 相机视锥体近裁截面相对相机的距离 * @param far: 相机视锥体远裁截面相对相机的距离* @param bgColor: 背景色 bgOpacity: 背景透明度*/
export const initThree = ({container, fov=75, near=0.1, far=1000, bgColor=0x444444, bgOpacity='1.0'}) => {const scene = new THREE.Scene();const camera = new THREE.PerspectiveCamera(fov, container.clientWidth / container.clientHeight, near, far);const renderer = new THREE.WebGLRenderer({ antialias: true });renderer.setSize(container.clientWidth, container.clientHeight);container.appendChild(renderer.domElement);renderer.setClearColor(bgColor, bgOpacity);renderer.render(scene, camera);return {scene, camera, renderer}
}
2、添加辅助坐标系
/*** 添加辅助观察坐标系* @param {*} scene */
export const addAxesHelper = (scene) => {const axesHelper = new THREE.AxesHelper(150);scene.add(axesHelper);
};
3、添加地平线网格
/*** 添加地平线网格* @param {*} scene */
export const addGridHelper = (scene) => {const gridHelper = new THREE.GridHelper(100, 100);scene.add(gridHelper);
};
4、添加轨道控制器
/*** 添加轨道控制器* @param {*} camera * @param {*} renderer */
export const addOrbitControls = (camera, renderer) => {let controls = new OrbitControls(camera, renderer.domElement);controls.enableDamping = true;controls.dampingFactor = 0.05;controls.screenSpacePanning = false;controls.minDistance = 1;controls.maxDistance = 1000;return controls;
};
5、添加循环动画
/*** 循环动画* @param {*} controls * @param {*} renderer * @param {*} camera * @param {*} scene */
export const animate = (controls, renderer, camera, scene) => {requestAnimationFrame(animate);controls.update();renderer.render(scene, camera);
};

相关文章:

Three 笔记

一:常用函数封装 1、实例化three 场景、相机、渲染器 import * as THREE from three;/*** 实例化three 场景、相机、渲染器* param container: dom容器 * param fov: 视野角度 * param near: 相机视锥体近裁截面相对相机的距离 * param far: 相机视锥体远裁截面相…...

Crypto | Affine password 第二届“奇安信”杯网络安全技能竞赛

题目描述: 明文经过仿射函数y3x9加密之后变为JYYHWVPIDCOZ,请对其进行解密,flag的格式为flag{明文的大写形式}。 密文: JYYHWVPIDCOZ解题思路: 1、使用在线网站直接破解或手工计算破解,获得flag。&#xf…...

android使用notification消息通知(工具类封装)

代码直接复制粘贴就可以用了,参数可以更具自己需求添加 private NotificationManager manager;private Notification notification;private static final String NORMAL_CHANNEL_ID "my_notification_normal";private static final String IMPORTANT_CHA…...

PicoDiagnostics (NVH设备软件)-PS软件设置文件类型介绍

作为远程技术指导人员&#xff0c;下面这个功能对你来说可能非常有帮助。 在PicoScope 7 软件的文件保存格式里&#xff0c;通常选择的是<PS 数据文件>类型&#xff0c;容易忽略其他实用的保存文件类型&#xff0c;下面我们介绍<PS设置文件>类型。 PS 数据文件&…...

Linux 定时删除7天前的文件

一、编写脚本 #!/bin/bash find /home/kafka/logs -mtime 10 -name "*.*" -exec rm -rf {} \;保存到home目录下的logs_delete.sh 二、解释 # 命令格式 find 对应目录 -mtime 天数 -name "文件名" -exec rm -rf {} \; # 示例命令&#xff0c;将/home/kaf…...

VISA机制

需要用到VISA的3种机制&#xff1a;属性机制、锁定机制和事件机制。以写资源为例&#xff0c;3种机制的作用如图 &#xff08;1&#xff09;属性机制 属性机制用来控制资源的各种属性&#xff0c;这些属性分为两种&#xff1a;只读属性和可读可写属性。 &#xff08;2&#xf…...

基于开源项目OCR做一个探究(chineseocr_lite)

背景&#xff1a;基于图片识别的技术有很多&#xff0c;应用与各行各业&#xff0c;我们公司围绕电子身份证识别自动录入需求开展&#xff0c;以下是我的研究心得 技术栈&#xff1a;python3.6&#xff0c;chineseocr_lite的onnx推理 环境部署&#xff1a;直接上截图&#xff…...

工作常遇,Web自动化测试疑难解答,测试老鸟带你一篇打通...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、自动化测试中隐…...

H5判断当前环境是否为微信小程序

H5判断当前环境是否为微信小程序 场景代码 场景 H5需要判断当前环境是否为微信小程序&#xff0c;然后做一些交互调整。 代码 isWxMiniCodeWebviewEnv() {return navigator.userAgent.match(/miniprogram/i) || window.__wxjs_environment miniprogram }...

桌面云架构讲解(VDI、IDV、VOI/TCI、RDS)

目录 云桌面架构 VDI 虚拟桌面基础架构 IDV 智能桌面虚拟化 VOI/TCI VOI 虚拟系统架构 TCI 透明计算机架构 RDS 远程桌面服务 不同厂商云桌面架构 桌面传输协议 什么是云桌面 桌面云是虚拟化技术成熟后发展起来的一种应用&#xff0c;桌面云通常也称为云桌面、VDI等 …...

计算图片中两个任意形状多边形相交部分的大小

一张图片中两个任意多边形相交的面积计算方法。本文参考https://blog.csdn.net/PanYHHH/article/details/110940428&#xff1b;加了一个简单的示例&#xff0c;也对代码做了一点清淅化。原博客中还有其他链接&#xff0c;是C代码&#xff0c;没有看原理&#xff0c;但以下代码…...

JavaScript的函数

在JavaScript中&#xff0c;函数是一种强大而灵活的工具&#xff0c;它们不仅可以执行特定的任务&#xff0c;还可以作为变量、参数和返回值进行传递。本文将介绍JavaScript函数的各个方面&#xff0c;包括函数的定义和调用、函数参数和返回值、匿名函数和箭头函数&#xff0c;…...

stm32 - Cortex

stm32 - Cortex 概念Cortex-M4 的工作模式和工作状态寄存器 概念 Cortex-M4 的工作模式和工作状态 处理模式 当处理器发生了异常或者中断&#xff0c;则进入处理模式进行处理&#xff0c;处理完成后返回到线程模式 权限大&#xff0c;访问处理器中所有的资源 线程模式 芯片复…...

计算机组成原理之概述

概述 计组主要讲的是计算机的硬件实现方式。 机器字长 比如8080处理器&#xff0c;如果想处理16位数的整数运算&#xff0c;就需要执行两次。 可见&#xff0c;机器字长会影响到数据的处理速度。 计算机硬件的基本组成 早期的冯诺依曼机 冯诺依曼提出了“存储程序”的概念&…...

思维导图软件 Xmind mac中文版软件特点

XMind mac是一款思维导图软件&#xff0c;可以帮助用户创建各种类型的思维导图和概念图。 XMind mac软件特点 - 多样化的导图类型&#xff1a;XMind提供了多种类型的导图&#xff0c;如鱼骨图、树形图、机构图等&#xff0c;可以满足不同用户的需求。 - 强大的功能和工具&#…...

群晖 DSM 7.0 Synology Photos IOS | Android 客户端下载

安卓版本低-官方说明&#xff1a;https://www.synology.com/zh-tw/dsm/7.1/software_spec/synology_photos Synology Photos Android 客户端下载大全&#xff1a; https://archive.synology.cn/download/Mobile 官网-Synology Photos | 群暉科技 Synology Inc. 全新的 DSM…...

@CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思

@CacheInvalidate 注解是 JetCache 框架提供的注解,它是由阿里巴巴开源的组织 Alibaba Group 开发和维护的。JetCache 是一款基于注解的缓存框架,提供了丰富的缓存功能和灵活的配置选项,可用于增强应用程序的性能和可扩展性。JetCache 支持多种缓存后端,包括内存缓存、Redi…...

React处理用户交互事件,如点击、输入框变化等,并使用事件处理函数来响应这些事件

在 React 中处理用户交互事件&#xff0c;如点击、输入框变化等&#xff0c;需要使用事件处理函数来响应这些事件。以下是一些学习和使用事件处理函数的基本步骤&#xff1a; 绑定事件处理函数&#xff1a; 首先&#xff0c;在你的组件中为要处理的元素&#xff08;如按钮、输…...

情侣游戏情侣飞行棋小程序系统:智能化互动,增添情感交流

随着科技的不断发展&#xff0c;智能化已经成为我们生活中不可或缺的一部分。在情侣互动游戏中&#xff0c;智能化互动也为情侣们带来了更加丰富、便捷的交流方式。本文将介绍情侣飞行棋小程序系统的智能化互动特点及其为情侣情感交流带来的益处。 一、情侣飞行棋小程序系统的…...

软考 系统架构设计师系列知识点之云计算(2)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之云计算&#xff08;1&#xff09; 所属章节&#xff1a; 第11章. 未来信息综合技术 第6节. 云计算和大数据技术概述 3. 云计算的部署形式 根据NIST&#xff08;National Institute of Standards and Technology&…...

STM32控制步进电机复位的三种实用方法及适用场景分析

1. 步进电机复位的基本原理与挑战 步进电机作为工业控制和智能硬件中常见的执行元件&#xff0c;其复位功能直接关系到设备的重复定位精度。所谓复位&#xff0c;就是让电机轴回到预设的零位参考点。我在调试3D打印机时发现&#xff0c;哪怕只有0.1mm的复位误差&#xff0c;都…...

DriverStore Explorer:释放20GB空间的Windows驱动管理神器

DriverStore Explorer&#xff1a;释放20GB空间的Windows驱动管理神器 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 你是否遇到过C盘空间莫名减少的情况&#xff1f;Windows系统在安装…...

Graphormer参数详解:property-guided checkpoint模型结构与推理逻辑

Graphormer参数详解&#xff1a;property-guided checkpoint模型结构与推理逻辑 1. Graphormer模型概述 Graphormer是一种基于纯Transformer架构的图神经网络&#xff0c;专门为分子图(原子-键结构)的全局结构建模与属性预测而设计。该模型在OGB(Open Graph Benchmark)和PCQM…...

CLAP模型量化压缩实战:8位整数量化指南

CLAP模型量化压缩实战&#xff1a;8位整数量化指南 1. 引言 如果你正在为嵌入式设备部署音频AI模型而苦恼&#xff0c;那么CLAP模型的量化压缩可能就是你要找的解决方案。CLAP&#xff08;对比语言-音频预训练&#xff09;模型虽然功能强大&#xff0c;但其庞大的参数量让在资…...

不止是IDEA!手把手教你用同一个Docker Compose文件部署全家桶(PyCharm/GoLand/DataGrip)

云端开发革命&#xff1a;用Docker Compose统一部署JetBrains全系Web IDE 1. 为什么需要云端IDE全家桶&#xff1f; 记得去年接手一个跨语言项目时&#xff0c;我的本地开发环境简直成了灾难现场——同时开着PyCharm处理Python数据分析、GoLand编写微服务、DataGrip管理数据库&…...

Ostrakon-VL终端部署案例:单卡3090实现12路摄像头并发扫描

Ostrakon-VL终端部署案例&#xff1a;单卡3090实现12路摄像头并发扫描 1. 项目背景与核心价值 在零售与餐饮行业&#xff0c;传统的图像识别系统往往面临两个痛点&#xff1a;一是工业级UI操作复杂&#xff0c;员工培训成本高&#xff1b;二是多路摄像头并发处理需要昂贵的高…...

SAP 生产订单批量创建与下达实战:基于 BAPI_PRODORD_CREATE 的自动化方案

1. 为什么需要批量创建生产订单&#xff1f; 在制造业的实际业务场景中&#xff0c;生产计划部门经常需要根据销售订单、预测数据或库存情况&#xff0c;一次性生成大量生产订单。想象一下&#xff0c;一个汽车零部件工厂每月要处理上千个零部件的生产计划&#xff0c;如果每个…...

DYOR 嘉创地产 02421.HK

文章目录1.公司概况1.1 简介1.2 股权结构1.3 核心资质与定位2.业务布局3.财务与市场表现&#xff1a;业绩承压&#xff0c;规模迷你3.1 业绩大幅下滑3.2 市场表现落后3.3 规模在行业中垫底4.核心优势5.潜在风险与隐忧6.小结参考文献1.公司概况 1.1 简介 嘉创地产是一家脱胎于…...

OpenClaw定时任务管理:千问3.5-27B驱动日报自动生成

OpenClaw定时任务管理&#xff1a;千问3.5-27B驱动日报自动生成 1. 为什么需要自动化日报 每周五下午&#xff0c;我都会陷入一种"汇报焦虑"——要手动整理GitHub提交记录、汇总JIRA任务进度、编写本周技术总结。这个过程通常要花费1-2小时&#xff0c;而且内容模板…...

轻舟体重管理大模型:赋能减重全病程管理,构建智能体重健康生态

在“健康中国2030”战略深入推进的背景下&#xff0c;慢性病防控与全民体重管理已成为公共卫生体系的重要议题。随着肥胖及相关代谢性疾病发病率持续上升&#xff0c;传统的体重干预模式已难以满足全人群、全生命周期的健康管理需求。在此趋势下&#xff0c;基于人工智能技术的…...