threejs基本圖形之網路模型
現在就是若干的常用圖形使用一覽。
我們要記住一個核心點,那就是所有幾何體都是由若干個三角形組成的。切記。非常核心!!!
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>threejs基本圖形之網路模型</title>
<script src="../js/three.js"></script>
</head>
<body>
<!-- 點、線、面
首先,所有圖形都是由點、線或面構成,所以有:
Points:點或點雲,可以用點或點雲表示圖形
Line/LineSegments:直線和虛線,可以用線或線團表示圖形
Mesh:網格模型,可以用若干三角面表示圖形
-->
<!--
-->
<canvas id="cc"></canvas>
<script type="text/javascript">
// 建立一個場景,它將儲存我們所有的元素,如物體、照相機和燈光。
var scene = new THREE.Scene();
// 建立一個攝像機,它定義了我們所處的位置.
var camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 1000);
// 建立渲染並設定大小 指定渲染canvas物件
var renderer = new THREE.WebGLRenderer({
canvas: document.querySelector("#cc")
});
renderer.setClearColor(0xEEEEEE);
renderer.setSize(window.innerWidth, window.innerHeight);
//建立一個xyz座標軸,方便初學者理解三維座標
var axes = new THREE.AxesHelper(20);
scene.add(axes);
//建立網格模型
var sphereGeometry = new THREE.CubeGeometry(10, 20, 20);//我們就建立個立方體。
var material = new THREE.MeshBasicMaterial ({color:Math.random()*0xffffff})//基礎材質
var cube = new THREE.Mesh(sphereGeometry,material)
scene.add(cube)
//我們的網格模型就搞成了。
//設定相機位置
camera.position.x = -30;
camera.position.y = 40;
camera.position.z = 30;
camera.lookAt(scene.position);
// 執行一次渲染器,GPU渲染成影象,繪製到canvas裡面呈現
const draw = function(){
requestAnimationFrame(draw)//不斷繪製
renderer.render(scene, camera);//渲染
cube.rotation.y+=0.01//網格模型旋轉
}
draw()
</script>
</body>
</html>