【问题标题】:Three.js: how to create polygon/polyhedron?Three.js:如何创建多边形/多面体?
【发布时间】:2015-03-22 11:31:48
【问题描述】:

除了这个之外,还有其他方法可以在three.js中创建多边形/多面体吗?

	var polyhedronPts = [];
	polyhedronPts.push( new THREE.Vector2 ( -100, 600 ) );
	polyhedronPts.push( new THREE.Vector2 ( 300, 600 ) );
	polyhedronPts.push( new THREE.Vector2 ( 600, -100 ) );
	
	polyhedronShape = new THREE.Shape( polyhedronPts );

	var extrudeSettings = {amount: 20}; // bevelSegments: 2, steps: 2 , bevelSegments: 5, bevelSize: 8, bevelThickness:5
	
	var geometry = new THREE.ExtrudeGeometry( polyhedronShape, extrudeSettings );

	mesh = THREE.SceneUtils.createMultiMaterialObject( geometry, [ new THREE.MeshBasicMaterial( { color: 0x00cc00 } ), new THREE.MeshBasicMaterial( { color: 0xff3333, wireframe: true, transparent: true } ) ] );
	scene.add( mesh );

【问题讨论】:

    标签: javascript three.js polyhedra


    【解决方案1】:

    为什么不使用http://threejs.org/docs/#Reference/Extras.Geometries/PolyhedronGeometry

    var verticesOfCube = [
        -1,-1,-1,    1,-1,-1,    1, 1,-1,    -1, 1,-1,
        -1,-1, 1,    1,-1, 1,    1, 1, 1,    -1, 1, 1,
    ];
    
    var indicesOfFaces = [
        2,1,0,    0,3,2,
        0,4,7,    7,3,0,
        0,1,5,    5,4,0,
        1,2,6,    6,5,1,
        2,3,7,    7,6,2,
        4,5,6,    6,7,4
    ];
    
    var geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
    

    【讨论】:

    • 我无法让这段代码工作。你能给出一个页面的完整html代码吗?它是立方体还是多面体?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-07
    • 2021-11-08
    • 2019-10-31
    • 2017-06-02
    • 2015-07-01
    • 1970-01-01
    • 2015-08-02
    相关资源
    最近更新 更多