2014-10-09 6 views
9

मैं एक आकार बाहर निकालना ज्यामिति, और अब का उपयोग कर बाहर निकालना सेटिंग्स मैं मोटाई मैं का इस्तेमाल किया था बढ़ाने की आवश्यकता के साथ बनाया था bevelThickness यह मोटाईवाई अक्ष के साथ बढ़ता है, लेकिन x और z अक्ष के साथ इसे बढ़ाने की आवश्यकता है।कैसे एक्स और z अक्ष के साथ बाहर निकालना ज्यामिति की मोटाई में वृद्धि करने के लिए - Three.js

यहाँ मेरी काम कर 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); 

नीचे नमूना छवि enter image description here

वहाँ किसी भी सेटिंग यह वृद्धि करने के लिए है? क्या कोई मुझे मार्गदर्शन कर सकता है?

+0

कैसे एक आकार बाहर करने के लिए के लिए http://threejs.org/examples/webgl_geometry_shapes.html देखें इसमें एक छेद के साथ। – WestLangley

+0

@WestLangley [यहां] (http://jsfiddle.net/Roobena/2g7wt4gk/) मेरा एक और पहेली है जिसे मैंने छेद का आकार निकालने के लिए इस्तेमाल किया था, लेकिन इसे बनाने के लिए 2 पथ मान (आकार के लिए 1 और दूसरे के लिए छेद), लेकिन मेरी प्रक्रिया में मुझे केवल एक पथ घाटी (बाहरी पथ आकार) मिल रहा है, यह एक और आंतरिक पथ (छेद) उत्पन्न करने के लिए संभव है – Roobena

+0

आपको छेद पथ स्वयं बनाना है ... साथ ही, समय बिताना अपने डेमो में प्रत्येक पैरामीटर मान के साथ प्रयोग करना और सुनिश्चित करें कि आप समझते हैं कि यह क्या दर्शाता है। अपना कोड देखकर, ऐसा प्रतीत होता है कि आप अभी तक सबकुछ समझ नहीं पाएंगे। – WestLangley

उत्तर

3

अंततः मैंने इसे ठीक करने के लिए चाल की है, मैंने जो किया है, मैंने सिर्फ मेष को क्लोन किया है, जो कि जाली जाल की स्थिति को जोड़ता है, इसलिए मुझे दूसरी दीवार की दीवार मिल गई, इस तरह मैंने कई क्लोन जोड़े पाश, कई भीतरी दीवार पास के अन्य दीवार बनाई गाढ़ा

डेमो: Fiddle

//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]); 

    } 

Result

संबंधित मुद्दे