2 Star 1 Fork 0

大春哥/threejs练习

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
03-test-edges.html 2.32 KB
一键复制 编辑 原始数据 按行查看 历史
dcg 提交于 2019-11-12 23:57 +08:00 . 2019年11月12日练习-md笔记
<html>
<head>
<title>My first three.js app</title>
<style>
body {
margin: 0;
}
canvas {
width: 100%;
height: 100%
}
</style>
</head>
<body>
<script src="js/three.js"></script>
<script src="js/OrbitControls.js"></script>
<script>
var lines = [];
// 创建创建
var scene = new THREE.Scene();
// 创建透视相机
var camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.3, 1000);
// 创建渲染器
var renderer = new THREE.WebGLRenderer();
// 设置渲染器的尺寸
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
new THREE.OrbitControls(camera, renderer.domElement);
// 圆锥
var geometry1 = new THREE.ConeBufferGeometry(1, 2, 15);
// var material = new THREE.MeshBasicMaterial({
// color: 0xdaa520
// });
// var cone = new THREE.Mesh(geometry, material);
// 圆柱体
var geometry2 = new THREE.CylinderGeometry(1, 1, 3, 12);
// var material = new THREE.MeshBasicMaterial({
// color: 0xffff00
// });
// var cylinder = new THREE.Mesh(geometry, material);
// 环3d
var geometry3 = new THREE.TorusGeometry(2, 0.3, 10, 10);
var material = new THREE.MeshBasicMaterial({
color: 0x005500
});
var torus = new THREE.Mesh(geometry3, material);
hemiLight = new THREE.HemisphereLight(0xffffff, 0xffffff, 0.6);
hemiLight.color.setHSL(0.6, 1, 0.6);
hemiLight.groundColor.setHSL(0.095, 1, 0.75);
hemiLight.position.set(0, 50, 0);
scene.add(hemiLight);
scene.add(torus);
torus.position.z = -5;
lines.push(torus);
addEdges(geometry1);
// addEdges(geometry2);
addEdges(geometry3);
// 动画
var animate = function () {
requestAnimationFrame(animate);
lines.forEach(v => {
v.rotation.y += 0.05
});
// camera.position.z -= 0.1;
renderer.render(scene, camera);
};
animate();
// 设置边缘网格
function addEdges(geometry) {
var edges = new THREE.EdgesGeometry(geometry);
var line = new THREE.LineSegments(edges, new THREE.LineBasicMaterial({
color: 0xffff00
}));
lines.push(line);
line.position.z = -5;
scene.add(line);
}
</script>
</body>
</html>
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dttx123/threejs_exercise.git
git@gitee.com:dttx123/threejs_exercise.git
dttx123
threejs_exercise
threejs练习
master

搜索帮助