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

网站维护的过程及方法wordpress 前台用户中心

网站维护的过程及方法,wordpress 前台用户中心,360营销推广,亚马逊网站推广怎么做本文 我们来说 顶点的转换 其实就是 我们所有顶点的位置发生转变 我们整个物体的位置也会随之转变 这里 我们编写代码如下 import ./style.css import * as THREE from "three"; import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.j…

本文 我们来说 顶点的转换

其实就是 我们所有顶点的位置发生转变 我们整个物体的位置也会随之转变
这里 我们编写代码如下

import './style.css'
import * as THREE from "three";
import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.js";
import { RGBELoader } from "three/examples/jsm/loaders/RGBELoader.js";
//创建相机
const camera = new THREE.PerspectiveCamera(45, //视角 视角越大  能看到的范围就越大window.innerWidth / window.innerHeight,//相机的宽高比  一般和画布一样大最好0.1,1000
);
const scene = new THREE.Scene();
let uvTexture = new THREE.TextureLoader().load("/textUv.jpg");const geometry = new THREE.BufferGeometry();
// 创建顶点数据
const vertices = new Float32Array([-1.0 ,-1.0 ,0.0,1.0 ,-1.0, 0.0,1.0 ,1.0 ,0.0,-1.0 ,1.0, 0.0
])
geometry.setAttribute("position", new THREE.BufferAttribute(vertices, 3));
const indices = new Uint16Array([0 ,1 ,2, 0, 3, 2]);
const material = new THREE.MeshBasicMaterial({map: uvTexture,side: THREE.DoubleSide
})
const uv = new Float32Array([0, 0, 1, 0, 1, 1, 0, 1
])
geometry.setAttribute("uv", new THREE.BufferAttribute(uv, 2));
const normals = new Float32Array([0, 0, 1,0, 0, 1,0, 0, 1,0, 0, 1
])
geometry.setAttribute("normal", new THREE.BufferAttribute(normals, 3));
geometry.setIndex(new THREE.BufferAttribute(indices, 1));
console.log(geometry);
const cube = new THREE.Mesh(geometry, material);
scene.add(cube)//c创建一个canvas容器  并追加到 body上
const renderer = new THREE.WebGLRenderer(0);
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);//设置相机位置   这里 我们设置Z轴  大家可以试试  S Y 和 Z  都是可以的
camera.position.z = 5;
//设置相机默认看向哪里   三个 0  代表 默认看向原点
camera.lookAt(0, 0, 0);
//将内容渲染到元素上
renderer.render(scene, camera);
const controls = new OrbitControls(camera, renderer.domElement);let rgbeloader = new RGBELoader();
rgbeloader.load("/xhdr/Alex_Hart-Snow_Pano_2k.hdr",(texture) =>{scene.background = texture;texture.mapping = THREE.EquirectangularReflectionMapping;material.envMap = texture;
})function animate() {controls.update();requestAnimationFrame(animate);/*cube.rotation.x += 0.01;cube.rotation.y += 0.01;*/renderer.render(scene, camera);
}
animate();

运行代码 我们元素是在中间的
在这里插入图片描述
但是 我们统一将他每一个顶点 x轴的值都加四
两个 负一 加四成 3 两个 一加四成 5
在这里插入图片描述
运行代码 很明显的看到 我们改了顶点的x轴 整个几何体x轴也向右移动了
在这里插入图片描述
但是这样 position 是不会改变的 我们看到的元素 依旧在中间位置

其实有方法可以帮我们移动顶点
这里 我们官网搜索
BufferGeometry
在这里插入图片描述
拉到下面 找到它这个 translate 函数
在这里插入图片描述
这个函数就可以直接移动顶点

首先 我们将
vertices 顶点的内容还原回去

// 创建顶点数据
const vertices = new Float32Array([-1.0,-1.0 ,0.0,1.0 ,-1.0, 0.0,1.0 ,1.0 ,0.0,-1.0 ,1.0, 0.0
])

我们可以直接
在这里插入图片描述
给需要移动顶点的几何体加上 translate 这里 我们设置所有顶点 y z 轴0不变 x轴加4

我们运行代码
在这里插入图片描述
然后 我们查看控制台中的 position
它也帮我们把 各个顶点的 x轴都加了4
在这里插入图片描述
那么 问题来了 我们什么时候要移动物体 什么时候又要移动顶点呢?

其实 绝大多数情况 position 直接移动物体是更好的
旋转呀 平移呀 我们都是更倾向于操作物体本身 因为最大的问题在于 移动顶点 你物体的中心点就不在物体中心了

但是有种特殊情况 比如 你的Float32Array 里面的顶点数据是后端接口返回的
它最初甚至的位置又有问题
那么 我们就需要 translate 去修正原点

http://www.yayakq.cn/news/807559/

相关文章:

  • 租用域名与空间的网站并会使用降权查询网站
  • 印刷厂网站建设方案延吉网站开发公司
  • 怎么看深圳网站页面设计wordpress突然变慢
  • 天津制作企业网站的天城建设网站
  • 临海 网站建设免费好用的网页制作软件
  • 专门做研究美股的财经网站网站功能定制合同
  • 网站如何改造wap门户网站cms系统
  • 信丰做网站秀米官网登录入口
  • 高校专业建设网站郑州高端网站建设哪家好
  • 深圳建设网站首页wordpress增加视频播放
  • 怎么在百度搜到自己的网站阿里云 建设网站怎么样
  • 郑州市有做网站的吗自己想建设一个网站
  • 临沂建设职业中专学校麒麟seo外推软件
  • 重庆本土网站爱未来企业邮箱
  • 新的网站怎么做seo编程免费网站
  • 打鱼网站开发wordpress后台字体
  • 网站代理浏览器0网络设计师证怎么考
  • 网站建设创新能力痛点微信小程序怎么做网站链接
  • 企业网站备案条件受欢迎的昆明网站推广
  • wordpress主题注册验证码竞价页面网站做优化
  • seo网站优化推广教程设计教程
  • 岫岩网站建设oa办公系统网页
  • 繁峙做网站建设天津滨海新区大爆炸
  • 网站后台怎么修改前台的某个超链接网址做正版电子书下载网站
  • 网站设计制作培训北京网页设计公司兴田德润实惠
  • 做网站的项目职责怎么写作品集模板网站
  • 网站建设格式wordpress区别
  • 网站推广策划公司网站域名没有实名认证
  • 东营网站建设哪家好360竞价推广
  • 外贸网站建设 联雅衡阳网站建设ss0734