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

合肥的网站建设公司做企业网站的尺寸是多少

合肥的网站建设公司,做企业网站的尺寸是多少,长沙 汽车 网站建设,p2p网站开发方法嗨,我是小路。今天主要和大家分享的主题是“threejs 安装教程”。 在当今的数字化时代,用户对视觉体验的要求越来越高。传统的2D网页已经无法满足所有需求,而三维(3D)图形技术则为前端开发者提供了新的方向。…

        嗨,我是小路。今天主要和大家分享的主题是“threejs 安装教程”。        

在当今的数字化时代,用户对视觉体验的要求越来越高。传统的2D网页已经无法满足所有需求,而三维(3D)图形技术则为前端开发者提供了新的方向。

Three.js 是一个强大的 JavaScript 库,专门用于创建和展示复杂的3D图形,并且可以直接在浏览器中运行。本文将为你详细介绍在项目开发过程中如何创建vue3项目,并在vue3结合Three.js进行3D网页的开发,帮助你快速入门并创建令人惊叹的3D网页应用。

一、创建vue3项目

1.安装nvm

注意:想要创建vue3项目,前提是安装对应的nodejs。在实际的开发中,我们经常会遇到不同的项目使用不同的nodejs版本,就会出现频繁切换nodejs的情况。为了解决这个问题,推荐小伙伴们使用nvm安装nodejs。具体的安装教程,可以点击查看以下链接:NVM 重新设置开发环境-CSDN博客

2.安装vue3

注意:在安装nvm时,注意下载对应的nodejs版本。这个项目中主要使用的nodejs是18.20.2版本。在nodejs安装完成之后,紧接着安装对应的vite,并运用vite创建vue项目。具体的步骤可以参考以下的npm命令:

#安装vite
npm install vite --save-dev   #创建vue项目
npm create vite myCase1 --template vue#项目初始化  进入到myCase1项目,安装对应的依赖
cd myCase1
npm install
#启动项目
npm run dev

3.安装vue-router

注意:router的安装步骤,可以参考以下链接:
vue3 创建vue-router-CSDN博客

vue2 配置router_vue2 router.js-CSDN博客

二、安装threejs

1、vue安装threejs

// 比如安装148版本
npm install three@0.148.0 --save

3、加载three.js

three.js依赖可以直接在对应的页面中进行加载。如下图:

3、按照概念搭建示例

<template><div class="pageBox"><div class="leftBox" ref="leftRef"></div><div class="rightBox"></div></div></template>
<script setup>
import { onMounted, reactive, ref } from 'vue';
import * as THREE from 'three';
// 引入轨道控制器扩展库OrbitControls.js
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
// 设置相机控件轨道控制器OrbitControls
const leftRef = ref();
// 定义相机输出画布的尺寸(单位:像素px)
let width = 800; //宽度
let height = window.innerHeight; //高度
// 创建3D场景对象Scene
const scene = new THREE.Scene();// 实例化一个透视投影相机对象
const camera = new THREE.PerspectiveCamera(50, width / height, 2, 6000);//创建一个长方体几何对象Geometry
const geometry = new THREE.BoxGeometry(50, 50, 50);//创建一个材质对象Material
const material = new THREE.MeshBasicMaterial({color: 0xff0000,//0xff0000设置材质颜色为红色
});
//将集合形体和材质融合
const mesh = new THREE.Mesh(geometry, material); //网格模型对象Mesh// 创建渲染器对象
const renderer = new THREE.WebGLRenderer();onMounted(() => {initData()render();//添加相机空间const controls = new OrbitControls(camera, renderer.domElement);// 如果OrbitControls改变了相机参数,重新调用渲染器渲染三维场景controls.addEventListener('change', function () {renderer.render(scene, camera); //执行渲染操作});//监听鼠标、键盘事件//当窗口发生改变时,触发时间,重新渲染window.onresize = () => {height = window.innerHeight;width = window.innerWidth / 2;renderer.setSize(width, height); //设置three.js渲染区域的尺寸(像素px)initData()}
})
const initData = () => {//设置网格模型在三维空间中的位置坐标,默认是坐标原点mesh.position.set(0, 10, 0);scene.add(mesh);//相机在Three.js三维坐标系中的位置// 根据需要设置相机位置具体值camera.position.set(200, 200, 200);camera.lookAt(mesh.position);//指向mesh对应的位置// AxesHelper:辅助观察的坐标系const axesHelper = new THREE.AxesHelper(150);scene.add(axesHelper);renderer.setSize(width, height); //设置three.js渲染区域的尺寸(像素px)//将innerHTML置空,避免append重复添加渲染leftRef.value.innerHTML = ''leftRef.value.append(renderer.domElement);
}
//渲染
const render = () => {renderer.render(scene, camera); //执行渲染操作mesh.rotateY(0.01);//每次绕y轴旋转0.01弧度mesh.rotateX(0.01);//每次绕x轴旋转0.01弧度mesh.rotateZ(0.01);//每次绕z轴旋转0.01弧度//重复渲染requestAnimationFrame(render);//请求再次执行渲染函数render,渲染下一帧
}</script>
<style scoped lang="less">
.pageBox {width: 100%;height: 100vh;padding: 0;margin: 0;display: flex;justify-content: space-between;align-items: center;.rightBox {width: 100%;height: 100%;background: yellow;}
}
</style>

三、回顾反思

1.项目流程

注意:视图效果基础的三要素是场景、相机和渲染。

第一步将需要创建的几何形和材质融合在一起,形成新的对象;第二步将相机聚焦新对象的位置,在屏幕展示出来;最后再将整个项目进行持续渲染,呈现整个3D模型渲染效果。

其它项目的不同就是在这基础上进行进行细化,深化。

2.遇到页面高宽变动时,几何图形运转加快

注意:在渲染的过程中,注意将innerHTML进行清空,因为append会将项目加载在父类上,不会删除原来存在的实例,会直接在父类的末尾添加子元素,导致几何体在一个定位上重复添加,呈现快速转动的效果。

希望这篇推广文能够帮助你更好地理解和使用 Three.js,激发你的创造力,让你在3D网页开发的世界里大放异彩!既然都看到这里了,记得【点赞】+【关注】+【收藏】哟。

参考文章:

3. 开发和学习环境,引入threejs | Three.js中文网


文章转载自:

http://FPo1kFFR.ntwxt.cn
http://tM2Surn8.ntwxt.cn
http://wxZv8QWn.ntwxt.cn
http://gXNdhI9P.ntwxt.cn
http://xoF7CaFy.ntwxt.cn
http://sdYs3t7Y.ntwxt.cn
http://dl2gDXp6.ntwxt.cn
http://rEgYiWkY.ntwxt.cn
http://QfvwNSEw.ntwxt.cn
http://3nZbgMmU.ntwxt.cn
http://0E5kBFsH.ntwxt.cn
http://oo2ymoXP.ntwxt.cn
http://Q77A87Uj.ntwxt.cn
http://N4cFT2qq.ntwxt.cn
http://mudsMHfX.ntwxt.cn
http://oIa5jZui.ntwxt.cn
http://kIq55T30.ntwxt.cn
http://MqgKvqEs.ntwxt.cn
http://MOK2rzPc.ntwxt.cn
http://JhlbAhPt.ntwxt.cn
http://avcVuaT0.ntwxt.cn
http://VTTeS3Pf.ntwxt.cn
http://v6OtWSYt.ntwxt.cn
http://3qKKeDsO.ntwxt.cn
http://IIIK167T.ntwxt.cn
http://x4eqS4GU.ntwxt.cn
http://UOhBuKY4.ntwxt.cn
http://A1aLi9ZO.ntwxt.cn
http://P62n8Btn.ntwxt.cn
http://KMb0D5sU.ntwxt.cn
http://www.dtcms.com/wzjs/725012.html

相关文章:

  • 温岭 网站制作搜索引擎营销方式
  • 网站需要怎么优化比较好wordpress 静态发布
  • 城口网站建设做盗版视频网站犯法吗
  • 手机要访问国外网站如何做衡水网站推广公司
  • 铜川网站建设公司电话什么网站不用备案
  • 网站制作公司都还赚钱吗网页设计制作公司报价
  • php 资讯网站苏州市建设厅网站首页
  • python网站开发 django网络推广工作好干吗
  • 网站建设目的意义互联网公司排名类比
  • 徐州网站建设找哪家企业为什么做网站系统
  • 网站提交至google个体工商户经营范围网站开发
  • 西安企业网站设计公司南充移动网站建设
  • fw可以做网站自己做网站 发布视频教程
  • 企业网站图片上传音乐介绍网站怎么做
  • 商城维护工作内容网站建设哪个网站建设平台支持花呗分期
  • 建设网站6980块钱贵吗jsp网站建设项目实战课后
  • 哪里做公司网站比较好中国专业的网站建设
  • 查看网站cms广州南站在哪个区
  • 永嘉网站制作公司网页制作教程素材
  • 在哪里做企业网站如何做社群营销模式
  • 怎么样做兼职网站一站式网站建设与运营
  • 万网网站流量整合营销传播的方法包括
  • 南山区公司网站制作天元建设集团有限公司北京分公司
  • 上海微网站制作上海环球金融中心观光厅
  • 简单网站开发实例东莞松山湖学校
  • 沈阳做网站哪家质量好价格低青岛公司建站网站
  • 免费注册域名网站推荐化妆品建设网站的目的
  • 智慧团建网站几点关闭wordpress 页面挂件
  • 提供企业网站建设价格北京建设制作网站
  • 腾讯云电商网站建设陵水网站建设费用