场景

THREE.Scene();
 
THREE.AxesHelper(20);
 

相机:

THREE.PerspectiveCamera()// 透视相机
THREE.OrthographicCamera()// 正交相机

渲染器:

THREE.WebGLRenderer() //3D场景渲染
CSS2DRenderer(); // 2D平面渲染(用于网页元素与场景元素绑定)
 
 
场景动画: 不限 ,一个无限循环函数
    animate() {
      // 实时更新动画函数
      // this.renderer.render(this.scene, this.camera);
      // this.labelRenderer.render(this.scene, this.camera);
      window.requestAnimationFrame(() => this.animate());
      //   this.update();
      TWEEN.update();
    },
 

光源:

THREE.AmbientLight(0xaffffff) //场景光
THREE.PointLight(0xa6a6a6, 1, 1000); //点光源
THREE.SpotLight(0xa6a6a6); //聚光灯
 

操作控件:

this.orbitControls = new OrbitControls(this.camera,this.renderer.domElement ) // 轨道控制器
FlyControls() // 飞行控件
 

几何体:

THREE.PlaneGeometry(长,宽,高) //平面
THREE.BoxGeometry(长,宽,高) // 立方体
THREE.CircleGeometry() // 
THREE.TextGeometry() // 文字
 
 
 
THREE.MeshStandardMaterial(

color: 0xa6a6a6, // 颜色

side: THREE.BackSide // 反向贴图

visible: false, // 显示隐藏

) //标准材质

 
THREE.Clock() 
 
this.orbitControls.addEventListener("change", this.render); // 静态场景优化性能时常用,
 

物体:

THREE.Mesh() // 网格
THREE.Group() //  (场景模型尽量分组,方便管理)
THREE.Line() // 线
THREE.Sprite() // 精灵(精灵是一个总是面朝着摄像机的平面,通常含有使用一个半透明的纹理。)
 
 
 
模型位置:
Mesh.position.set(x,y,z)
 
模型缩放:
Mesh.scale.set(1, 1, 1)
 

分组:

THREE.Group();
 

追加模型:
scene.add(Mesh) 追加到场景
group.add(mesh) 追加到分组

删除模型:
obj.geometry.dispose();
obj.material.dispose();
scene.remove(obj);

模型/分组查找:
场景/分组.traverse() 遍历
scene.getObjectById() ID 查找
scene.getObjectByName() 名称查找

three.js 模型常用操作的更多相关文章

  1. JavaScript(js)对象常用操作,JS操作JSON总结

    数据类型判断可以通过一元操作符typeof,此操作符可以判断大部分JS数据类型. 也可以通过instanceof来判断.如: var a = []; alert(typeof a); // objec ...

  2. js事件常用操作、事件流

    注册事件 给元素添加事件,称为注册事件或者绑定事件. 注册事件有两种方式:传统方式和方法监听注册方式 传统方式 on开头的事件,例如onclick <button onclick="a ...

  3. js字符串常用操作

    1.字符串分割 var myStr = "I,Love,You,Do,you,love,me"; var substrArray = myStr .split(",&qu ...

  4. js 字符串常用操作

    function Class_String_Common(){ //将字符串 myString 的 start位置 和 end位置 之间的内容替换为 replaceStr this.replace1 ...

  5. js中常用的操作

    1.js中常用的数组操作 2.js中常用的字符串操作 3.js中常用的时间日期操作 4.定时器

  6. javascript中字符串常用操作总结、JS字符串操作大全

    字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用操作做个整理,一者加深印象,二者方便今后温 ...

  7. js,jQuery数组常用操作小结

    一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...

  8. js--javascript中字符串常用操作总结、JS字符串操作大全

    字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用操作做个整理,一者加深印象,二者方便今后温 ...

  9. selenium常用操作,查找元素,操作Cookie,获取截图,获取窗口信息,切换,执行js代码

    目录: 1. 常用操作 2. 查找元素 3. 操作Cookie 4. 获取截图 5. 获取窗口信息 6. 切换 7. 执行JS代码 简介 selenium.webdriver.remote.webdr ...

随机推荐

  1. 题解 Omeed

    传送门 差了一点没想到正解-- 首先单次询问的 \(O(n)\) 写法很好想,考虑如何优化 首先基础分区间求和即可 然后那个连击分的话,是一个关于 \(f_i\) 和 \(f_{i-1}\) 的柿子 ...

  2. kivy之CheckBox属性实操学习

    checkbox部件属性不多,本练习举例了单选,复选二种方式,并将各checkbox进行id命名,每个都绑定了相同的动作,具体大家可以看源码进行学习. 先在开发工具pycharm里新建一个项目,然后新 ...

  3. 两个线程交叉打印一个打印A一个打印B 循环打印?

    public static Object obj1 = new Object(); public static void printAB(){ Thread t1 = new Thread(() -& ...

  4. 第一次上传代码到gitee

    初始化 git init 添加文件到本地仓库 git add . 提交文件到本地仓库 git remote add origin 仓库地址 拉去远程仓库代码 git pull origin maste ...

  5. docker开源系统监控软件Nagios

    开源的系统监控软件 下面整理了3个: 1.Zabbix 2.Nagios 3.Open-Falcon 这位博主进行的完整的介绍: https://www.cnblogs.com/linuxandy/p ...

  6. SQL server多表联合查询

    参考网址: https://blog.csdn.net/zou15093087438/article/details/79226394 1. 外连接可分为:左连接.右连接.完全外连接. a.  左连接 ...

  7. 让div占据父元素剩下的所有位置

    场景模拟: 现在有一个父容器,里面有俩个div,左边的要给一个固定的200px的宽度,父容器剩下的宽度都归右边的div该怎么完成?HTML代码: <div class="wrap&qu ...

  8. final、finally与finalize的区别?

    一.final.finally与finalize的区别 final:final是一个修饰符,可以修饰类,方法和变量.final修饰类表示类不能被其它类继承,并且该类中的所有方法都会隐式的被final修 ...

  9. Scrapy启动spider出错

    python 3.7 里,async变成了关键字,所以报错. 解决方法:1回退python3.6版本. 2找到报错的那个py文件,比如manhole.py,将函数参数async改个名字(比如改成asy ...

  10. 刷题-力扣-1738. 找出第 K 大的异或坐标值

    1738. 找出第 K 大的异或坐标值 题目链接 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/find-kth-largest-xor-co ...