2016-12-11 1 views
2

Comment puis-je dessiner des axes d'objet. Je me réfère aux axes locaux du maillage et non aux axes du monde. Je sais que l'utilisation:Dessiner des axes d'objet 3D troisj

function drawlines(){ 
      var material = new THREE.LineBasicMaterial({ 
        color: 0x0000ff 
       }); 

       var geometry = new THREE.Geometry(); 
       geometry.vertices.push(
        new THREE.Vector3(100, 0, 0), 
        new THREE.Vector3(0, 0, 0) 
       ); 

       var line = new THREE.Line(geometry, material); 
       scene.add(line); 

       var material = new THREE.LineBasicMaterial({ 
        color: 0x00ff00 
       }); 

       var geometry = new THREE.Geometry(); 
       geometry.vertices.push(
        new THREE.Vector3(0, 100, 0), 
        new THREE.Vector3(0, 0, 0) 
       ); 

       var line = new THREE.Line(geometry, material); 
       scene.add(line); 

       var material = new THREE.LineBasicMaterial({ 
        color: 0xff0000 
       }); 

       var geometry = new THREE.Geometry(); 
       geometry.vertices.push(
        new THREE.Vector3(0, 0, 100), 
        new THREE.Vector3(0, 0, 0) 
       ); 

       var line = new THREE.Line(geometry, material); 
       scene.add(line); 
     } 

dessine des lignes à XYZ respectivement. Ce dont j'ai besoin est de dessiner l'axe XYZ du modèle. Comment puis je faire ça. Je charge le modèle avec ce code

var loader = new THREE.JSONLoader(); 
      loader.load("https://threejs.org/examples/models/animated/horse.js", function (geometry) { 
       var material = new THREE.MeshLambertMaterial({ 
        vertexColors: THREE.FaceColors, 
        morphTargets: true, 
        overdraw: 0.5 
       }); 
       mesh = new THREE.Mesh(geometry, material); 
       mesh.scale.set(1.5, 1.5, 1.5); 
       scene.add(mesh); 
       mixer = new THREE.AnimationMixer(mesh); 
       var clip = THREE.AnimationClip.CreateFromMorphTargetSequence('gallop', geometry.morphTargets, 30); 
       mixer.clipAction(clip).setDuration(1).play(); 
      }); 

Répondre

4

Si je vous ai bien, vous pouvez utiliser THREE.AxisHelper(). Créez simplement une instance et ajoutez-la à votre modèle.

jsfiddle exemple.