2017-09-14 34 views
0

我想跟着一個教程寫在我不熟悉的數學編程語言,並試圖將教程轉換爲Unity 3D的C#代碼。用C#創建一個phillotaxic球體/半球?

在這裏看到:http://blog.wolfram.com/2011/07/28/how-i-made-wine-glasses-from-sunflowers/

float theta = Mathf.PI * (3 - Mathf.Sqrt(5)); 
    for (int i = 0; i < spawnPoints.Length; i++) 
    { 
     float r = (radius/2) * Mathf.Sqrt(i)/Mathf.Sqrt(points); 
     float a = theta * i; 

     Vector3 coords = transform.TransformDirection(new Vector3(Mathf.Cos(a) * r, 0, Mathf.Sin(a) * r))+transform.position; 

     spawnPoints[i] = coords; 
    } 

這當然如果在2D生成平坦phillotaxic佈置。我試圖修改Y(上)軸的深度(創建球體)。

我似乎無法正確設置Y(上)軸與我和半徑成正比。

考慮到上面的教程,我該如何計算Y?

回答