zoukankan      html  css  js  c++  java
  • three.js

    学习网址

    http://www.hewebgl.com/

    GitHub

    https://github.com/mrdoob/three.js

    使用动画引擎Tween.js来创建动画

    为了使程序编写更容易一些,我们可以使用动画引擎来实现动画效果。和three.js紧密结合的动画引擎是Tween.js,你可以在https://github.com/sole下载。

    对于快速构件动画来说,Tween.js是一个容易上手的工具。首先,你需要引擎js文件,如下:

    <-script src="../js/tween.min.js" data-ke-src="../js/tween.min.js"><-/script>

    第二步,就是构件一个Tween对象,对Tween进行初始化,本例的代码是:

    function initTween()
    {
        new TWEEN.Tween( mesh.position)
                .to( { x: -400 }, 3000 ).repeat( Infinity ).start();
    }

    TWEEN.Tween的构造函数接受的是要改变属性的对象,这里传入的是mesh的位置。Tween的任何一个函数返回的都是自身,所以可以用串联的方式直接调用各个函数。

    to函数,接受两个参数,第一个参数是一个集合,里面存放的键值对,键x表示mesh.position的x属性,值-400表示,动画结束的时候需要移动到的位置。第二个参数,是完成动画需要的时间,这里是3000ms。

    repeat( Infinity )表示重复无穷次,也可以接受一个整形数值,例如5次。

    Start表示开始动画,默认情况下是匀速的将mesh.position.x移动到-400的位置。

    第三步是,需要在渲染函数中去不断的更新Tween,这样才能够让mesh.position.x移动位置:

    function animation()
    {
        renderer.render(scene, camera);
        requestAnimationFrame(animation);
        stats.update();
        TWEEN.update();
    }

    其中的TWEEN.update()完成了让动画动起来到目标。如果不调用这个函数场景就不能动起来了。

    认识相机

    在Threejs中相机的表示是THREE.Camera,它是相机的抽象基类,其子类有两种相机,分别是正投影相机THREE.OrthographicCamera和透视投影相机THREE.PerspectiveCamera。

    正投影和透视投影的区别是:

    透视投影有一个基本点,就是远处的物体比近处的物体小。

    正投影,远近高低比例都相同。

    VTK文件格式

    什么是vtk文件?

    Vtk模型是一种以文本方式表示的3D模型文件,其能够表示点面信息,而且能够以人类易读易懂的方式以文本的形式存储下来。在科学研究中,这种文件格式使用得非常多,我们这里详细的讲解一下,这种文件格式。

    vtk是3D模型的一种格式,现在版本已经到4.0了。你可以在网上找到这种格式的详细解释,当然最好去google搜索。

  • 相关阅读:
    第一次个人编程作业
    第一次博客作业
    动态规划 01背包学习中
    学习dijk最短路径中
    蓝桥杯 小盆友排队
    蓝桥杯 地宫取宝
    简单的BFS学习笔记
    C趣味100道之58.拉丁方的一些想法。
    蓝桥杯 错误票据--!偶然间发现,然后呵呵!
    函数实现计算标准差
  • 原文地址:https://www.cnblogs.com/miangao/p/7649332.html
Copyright © 2011-2022 走看看