我想繪製一個與three.js
正常的餅圖,並與CylinderGeometry
去做。 問題是,我想動畫我的餅圖。就像有人點擊餅圖的一部分一樣,它應該從餅圖中滑出。製作CylinderGeometry非空心
問題是,這個幾何體是鏤空在裏面! 有沒有辦法使CylinderGeometry
固體(非空心)? (我知道我可以畫我自己的餅圖,但我想知道是否有可能與CylinderGeometry
做呢?)
我想繪製一個與three.js
正常的餅圖,並與CylinderGeometry
去做。 問題是,我想動畫我的餅圖。就像有人點擊餅圖的一部分一樣,它應該從餅圖中滑出。製作CylinderGeometry非空心
問題是,這個幾何體是鏤空在裏面! 有沒有辦法使CylinderGeometry
固體(非空心)? (我知道我可以畫我自己的餅圖,但我想知道是否有可能與CylinderGeometry
做呢?)
LatheGeometry()
或ExtrudeGeometry()
將幫助你建立一個圓柱體的部分。但是因爲你想要一個非空洞的細分市場,那麼ExtrudeGeometry()
就是你的選擇。
jsfiddle例如
這是我的代碼的通氣管。 我正在遍歷一個json文件來獲取數據,然後這段代碼創建了多個段。
var segment = new THREE.Mesh(new THREE.ExtrudeGeometry(new THREE.CylinderGeometry(5,5,1.5,50,50,false,lastThetaStart,(Math.PI*2)*(jsonData[data].percent/100)),
{amount: 100, steps: 100, bevelEnabled : false}),
new THREE.MeshPhongMaterial({
color: Math.random() * 0xffffff,
shading: THREE.SmoothShading,
specular: 0xffffff,
shininess: 3,
}));
但只要我執行我的example.html
中的文件,它給了我下面的錯誤:
three.js:26099 Uncaught TypeError: shape.extractPoints is not a function(…)
我更新了我的答案與jsfiddle的例子。 – prisoner849
這是行不通的。如果你看看github上的源代碼,它說它只能從路徑形狀中擠出幾何圖形。 – Bajro
你能證明你試過了嗎? – prisoner849
我用'ExtrudeGeometry()'做了一個例子,它工作得很好。 'Path'有一個很好的'absarc(...)'方法。 – prisoner849