Threejs之二 相機詳解

2021-09-24 06:27:16 字數 2018 閱讀 3428

所謂透視投影相機(perspectivecamera),基本等同於人的眼睛,意思就是:離的遠的物體會顯得比較小,近處的物體會比較大.

透視投影相機的建構函式:

perspectivecamera(fov,aspect,near,far)複製**

根據上圖來理解透視投影相機的4個引數:

for:我理解為眼睛睜開的角度即視野的大小,如果設定為0則表示你閉上了眼睛,所以什麼都看不到;一般情況下來說設定為45°-60°是最佳的效果.

aspect:實際視窗的縱橫比(width/height),即寬度除以高度,是照相機水平方向和垂直方向的長度比值,通常設為canvas的寬高比.

near:表示近處裁面的距離

var scene, camera, renderer, cube;

scene = new three.scene();

camera = new three.perspectivecamera(45, window.innerwidth / window.innerheight, 1, 1000);

renderer = new three.webglrenderer();

renderer.setsize(window.innerwidth, window.innerheight);

camera.position.set(0, 0, 5);

scene.add(camera);

cube = new three.mesh(new three.boxgeometry(1, 1, 1),

new three.meshbasicmaterial()

); scene.add(cube);

renderer.render(scene, camera);複製**

得到下圖的結果:

通過透視投影相機我們可以看到正方體的所有線條,有遠近大小的效果,你可以通過改變fov視角的度數來觀察效果(視角越大物體越小).

正投影相機的建構函式:

orthographiccamera(left,right,top,bottom,near,far)

正投影相機的六個引數,分別代表相機拍攝到的空間的六個面的位置,這六個平面圍成乙個長方體,這個長方體也叫視景體(frustum).只有在視景體內部(下圖中的灰色部分)的物體才可能顯示在螢幕上,而視景體外的物體會在顯示之前被裁減掉.為了保持照相機的橫豎比例,需要保證(right - left)與(top - bottom)的比例與canvas寬度與高度的比例一致。

var scene, camera, renderer, cube;

scene = new three.scene();

camera = new three.orthographiccamera(-2, 2, 1.5, -1.5, 1, 10);

camera.position.set(0, 0, 5);

renderer = new three.webglrenderer();

renderer.setsize(window.innerwidth, window.innerheight);

scene.add(camera);

cube = new three.mesh(new three.boxgeometry(1, 1, 1),

new three.meshbasicmaterial()

);scene.add(cube);

renderer.render(scene, camera);複製**

得到如下結果:

由於前面的邊覆蓋了後面的邊,導致我們看到的是乙個正方形.

你可以通過改變相機每個平面的引數來理解每個引數的實際作用.

當然,你也可以通過監聽鍵盤事件來改變相機的位置實現乙個動態的場景:

document.addeventlistener('keydown', function (event) 

renderer.render(scene, camera);

});複製**

threejs 二 移動,相機

1.改變相機的位置,讓物體移動 function animation 2.改變物體自身的位置,讓物體移動 function animation 3.fps stats new stats stats.domelement.style.position absolute stats.domelemen...

相機選型之二

1 明確需求 確定檢測產品的精度要求 確定相機要看的視野大小 要確定檢測物體的速度 確定是動態檢測還是靜態檢測,根據運動的速度選擇最小 時間 缺陷檢測 定位 尺寸檢測 現場環境 相機的幀率,解析度越高,幀率越小 2 確定硬體型別 確定相面畫素大小 精度 視野 長或寬 相機畫素 長或寬 例如 假設視野...

相機矯正 小公尺9相機使用技巧

小公尺9作為小公尺首款後置三攝的手機,搭載4800萬超廣角ai三攝,採用索尼imx586 4800萬感測器,硬體規格十分強悍。這麼好的硬體配置,要是不掌握一些拍攝技巧就浪費了,下面給大家介紹小公尺9相機使用技巧 小公尺9相機使用技巧 1 智慧型超廣角 可能有些使用者對於超廣角相機缺乏了解,不知道什麼...