簡體   English   中英

如何沿x和z軸增加拉伸幾何的厚度 - Three.js

[英]How to increase the thickness of the extrude geometry along x and z axis - Three.js

我使用拉伸幾何創建了一個形狀現在使用拉伸設置我需要增加厚度我使用bevelThickness它增加沿y軸厚度 ,但需要沿x和z軸增加它

在這里,我的工作jsfiddle

下面是我的擠出設置代碼,

var extrusionSettings = {
            curveSegments:5,
            steps: 10,
            amount: 10,
            bevelEnabled: true,
            bevelThickness: 120,
            bevelSize: 0,
            bevelSegments: 8,
            material: 0,
            extrudeMaterial: 1
        };

        var geometry1 = new THREE.ExtrudeGeometry( shape1, extrusionSettings );

        var materialLeft = new THREE.MeshLambertMaterial({
            color: 0xd6d6d6,// red  
            transparent:true,
            side: THREE.DoubleSide,
            ambient: 0xea6767,
            opacity:-0.5
        });
        var materialRight = new THREE.MeshLambertMaterial({
            color: 0xcc49c3,//violet                
            side: THREE.DoubleSide,
            ambient: 0xcc49c3
        });         

        var materials = [  materialLeft, materialRight                               
                            ];

        var material = new THREE.MeshFaceMaterial( materials );
        var mesh1 = new THREE.Mesh( geometry1, material );          
        object.add( mesh1 );
        object.rotation.x = Math.PI / 2;

        scene.add( object );

下面是示例圖像 在此輸入圖像描述

是否有任何設置來增加它? 任何人都可以指導我嗎?

最后我做了修復它的技巧,我做的只是我克隆了一個網格添加添加到克隆網格的位置,所以我得到了另一個內牆附近的牆,通過這種方式我添加了多個克隆與循環,多個內附近的牆壁造成牆壁變厚,

演示: 小提琴

//outer wall mesh 
var mesh1 = new THREE.Mesh( geometry1, material );
  object.add( mesh1 );

  var mesh_arr=new Array();
  for(i=0.1;i<15;i++)
  {

      //cloned mesh,add position to the cloning mesh
      mesh_arr[i] = mesh1.clone();
      mesh_arr[i].position.set(i,i,i);
      mesh_arr[i].updateMatrix();
      object.add( mesh_arr[i] );

  } 

結果

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM