Rumah  >  Artikel  >  hujung hadapan web  >  js模拟3D场景效果代码打包_javascript技巧

js模拟3D场景效果代码打包_javascript技巧

WBOY
WBOYasal
2016-05-16 17:57:391116semak imbas

要在二维空间模拟出三维的效果,就需要把三维的坐标转换成二维坐标。一个最基本依据是:东西越远,看到大小就越小,坐标越往消失点靠拢。
  透视公式:
   scale = fl / (fl + z);
   scale是大小的比例值,0.0到1.0之间,fl是观察点到成像面的距离,通常这个值是固定,z就是物件的三维空间中的z轴。
  在写这些代码之前,我喜欢用面向对象来描述我写的这些东西,比如我需要一个场景,场景是个空间,空间内是可以容纳各种物件的,物件是个对象,物件是是x,y,z三个维度的,场景可以插入任意多的物件,物件就会以它的坐标值,显示在场景的特定位置,由场景来负责物件的显示位置。
  一些demo,请使用鼠标移动及滚轮来控制。
效果1


[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

效果2

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

效果3

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

效果4

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn