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

wap的网站模板建网站需要哪些资质

wap的网站模板,建网站需要哪些资质,wordpress文章博客模板下载,佛山中小企业网站制作使用Three.js创建旋转的立方体 在本篇技术博客中#xff0c;我们将介绍如何使用Three.js创建一个简单的场景#xff0c;其中包含一个旋转的立方体。我们将学习如何设置场景、摄像机、立方体和渲染器#xff0c;以及如何使用OrbitControls和gsap库来实现立方体的旋转动画和交…使用Three.js创建旋转的立方体 在本篇技术博客中我们将介绍如何使用Three.js创建一个简单的场景其中包含一个旋转的立方体。我们将学习如何设置场景、摄像机、立方体和渲染器以及如何使用OrbitControls和gsap库来实现立方体的旋转动画和交互效果。 准备工作 在开始之前我们需要确保以下准备工作已完成 在你的项目目录中创建一个HTML文件例如index.html并在其中引入Three.js库和OrbitControls库 !DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleThree.js Rotate Cube/title /head bodyscript srchttps://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js/scriptscript srchttps://cdnjs.cloudflare.com/ajax/libs/three.js/r128/jsm/controls/OrbitControls.min.js/scriptscript srchttps://cdnjs.cloudflare.com/ajax/libs/gsap/3.8.0/gsap.min.js/scriptscript srcapp.js/script /body /html在项目目录下创建一个app.js文件并将你提供的Three.js代码复制到其中。 创建场景和立方体 以下是在Three.js中创建场景、摄像机、立方体和渲染器的代码 // 导入Three.js库中的所有模块并命名为THREE import * as THREE from three; // 导入OrbitControls模块并命名为OrbitControls import { OrbitControls} from three/examples/jsm/controls/OrbitControls; // 导入gsap库并命名为gsap import { gsap } from gsap;// 创建一个Three.js场景 const scene new THREE.Scene();// 创建透视相机参数分别为视野角度长宽比近裁剪面和远裁剪面 const camera new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000); // 设置相机位置 camera.position.set(10, 10, 10); // 将相机添加到场景中 scene.add(camera);// 创建立方体的几何体 const box new THREE.BoxGeometry(1, 1, 1); // 创建立方体的材质颜色为绿色 const material new THREE.MeshBasicMaterial({ color: 0x00ff00 }); // 创建立方体并将几何体和材质传入 const cube new THREE.Mesh(box, material); // 将立方体添加到场景中 scene.add(cube);// 创建WebGL渲染器 const renderer new THREE.WebGLRenderer(); // 设置渲染器的大小为窗口大小 renderer.setSize(window.innerWidth, window.innerHeight); // 将渲染器的DOM元素添加到页面中 document.body.appendChild(renderer.domElement); 以上代码创建了一个Three.js场景并在场景中添加了一个绿色的立方体。摄像机的位置被设置为(10, 10, 10)以便我们能够从不同角度看到立方体。 添加OrbitControls 为了能够通过鼠标控制摄像机视角我们使用OrbitControls库 // 使用OrbitControls添加交互控制 const controls new OrbitControls(camera, renderer.domElement); // 启用阻尼效果使控制更加平滑 controls.enableDamping true; 通过这段代码我们添加了OrbitControls使得用户可以通过鼠标拖拽和滚动来旋转和缩放场景中的内容。 渲染和动画 // 定义渲染和动画函数 function render(time) {// 更新OrbitControls的状态以响应用户的交互controls.update();// 渲染场景和相机renderer.render(scene, camera);// 使用requestAnimationFrame持续进行渲染和动画requestAnimationFrame(render); }// 调用渲染和动画函数启动动画效果 render(); 以上代码是一个渲染函数它使用requestAnimationFrame来持续地更新场景和摄像机从而实现动画效果。controls.update()用于更新OrbitControls的状态以便用户能够交互地控制场景的旋转。 使用gsap创建动画效果 const gs gsap.to(cube.rotation, {// 动画持续时间为5秒duration: 5,// 绕y轴旋转360度即一圈y: Math.PI * 2,// 动画重复次数为无限次repeat: -1,// 动画来回反复播放yoyo: true,// 延迟1秒后开始动画delay: 1,// 使用反弹效果的缓动函数ease: bounce.out }); 在这段代码中我们使用gsap库来创建一个立方体的旋转动画。立方体的旋转是围绕y轴旋转的并且具有反弹效果持续5秒钟不断重复。 添加交互功能 // 添加双击事件监听器用于暂停或继续动画 window.addEventListener(dblclick, () {// 如果动画正在进行中则暂停动画if (gs.isActive()) {gs.pause();} else {// 如果动画已经暂停则继续动画gs.resume();} }); //可以自己调整为双击进入全屏const fullscreendocument.fullscreenElement||document.webkitFullscreenElement;if(!fullscreen){renderer.domElement.requestFullscreen();}else{document.exitFullscreen();} 以上代码为窗口添加了一个双击事件监听器。当用户双击窗口时我们会检查立方体的旋转动画是否正在进行中如果是则暂停动画如果不是则继续动画。 响应窗口大小改变 // 添加窗口大小改变事件监听器使场景自适应窗口大小 window.addEventListener(resize, () {// 更新相机的长宽比camera.aspect window.innerWidth / window.innerHeight;// 更新相机投影矩阵camera.updateProjectionMatrix();// 更新渲染器的大小renderer.setSize(window.innerWidth, window.innerHeight);// 重新渲染场景和相机renderer.render(scene, camera); }); 最后我们为窗口的大小改变添加了一个事件监听器。当用户调整窗口大小时我们会重新设置摄像机的视角和渲染器的大小以保持场景的纵横比。 运行应用 通过以上的代码我们成功地创建了一个Three.js场景其中包含一个旋转的立方体。用户可以通过鼠标来控制场景的旋转和缩放双击窗口可以暂停和继续立方体的旋转动画。同时当用户调整窗口大小时场景会自动适应窗口大小。
http://wiki.neutronadmin.com/news/400528/

相关文章:

  • 莱芜网站建设公众号建设网站开发深圳
  • 80s网站建设工作室做sns网站要多大空间
  • 找人做一下网站大概多少钱无锡企业网站排名优化
  • 下载汽车网站制作网站各大搜索引擎网站提交入口大全
  • 沈阳网站建设哪里好长链接缩短在线生成
  • 敦煌做网站的公司电话微云做网站
  • seo百家外链网站文档共享网站建设
  • 中英西班牙网站建设乐清建设网站公司
  • 怎么利用招聘网站做薪酬调查批量查询神马关键词排名
  • 天津商城网站建设威联通wordpress怎么用
  • 外贸网站知名做外链wordpress安装畅言
  • 刘涛做代言的那个网站网络营销师在哪里报名考试
  • 帝国cms怎么做网站软件开发属于技术服务吗
  • 临沂建设局网站网页界面设计原则
  • 苏宁易购网站建设的目标中国十大含金量证书
  • 网站建设友情链接怎样交换智能建站吧
  • 石家庄定制网站建设多少钱临夏网站建设公司
  • 问卷调查网站建设有关网站备案号规则
  • 网站建设没有签定合同网站建设虚拟主机说明
  • 长沙市网站建设公司代理商提升学历最快的方法
  • 编写网站 支付宝wordpress 关于我们页面
  • 做商品二维码检测的网站上海建网站方案
  • 网站建设的可行性研究的前提鹤壁网站建设兼职
  • 网站管理内容重庆搜索引擎优化seo
  • 海尔集团电子网站建设网站移动化建设方案
  • 太原建站公司有哪些设计单网站建设
  • 网站浏览历史怎么查看搜狗网址
  • 那网站做问答有经验的企业做网站
  • 音乐网站开发背景及意义网页制作素材服装类
  • 有哪些企业有网站有哪些类型怎样找外贸公司合作