2013-02-26 44 views
0

我是three.js的新手,但這是我想要做的。如何在three.js中添加標籤到球體

我有一個球體..我想添加一個id標籤距離(比方說)2個單位到它的表面。

所以

var geometry = new THREE.SphereGeometry(50, 25, 25); 
var draw_object = new THREE.Mesh(geometry, [ new THREE.MeshBasicMaterial({ color: Math.random() * 0xffffff, opacity: 0.5 }) ]); 

現在我想給它一個名字「球1」

,然後在距離「X」從球體表面的單位..分配一個標籤給它。 捕捉是這個球體在太空中移動..所以標籤必須留下來。

我一直在努力,因爲過去兩天沒有任何運氣。

幫助 任何š

+1

您是否查看了以前的這個問題? http://stackoverflow.com/questions/11447821/how-to-add-label-to-a-three-mesh – 2013-02-26 01:36:29

回答

1

你可能會想使用Sprite如上(how to add Label to a THREE.Mesh?)引用的例子不過,而不是設置的位置是鼠標座標,計算從球偏移 - 說這是,例如,(3,4,5) - 和這樣做

label.position.set(sphere.position.add(new THREE.Vector3(3,4,5))); 

這樣,標籤的位置存儲對球的位置的參考,而隨着球移動標誌將移到用它。