UnityEditor.TreeAO.PermuteCuboid C# (CSharp) Method

PermuteCuboid() private static method

private static PermuteCuboid ( Vector3 dirs, int offset, float x, float y, float z ) : int
dirs Vector3
offset int
x float
y float
z float
return int
        private static int PermuteCuboid(Vector3[] dirs, int offset, float x, float y, float z)
        {
            dirs[offset] = new Vector3(x, y, z);
            dirs[offset + 1] = new Vector3(x, y, -z);
            dirs[offset + 2] = new Vector3(x, -y, z);
            dirs[offset + 3] = new Vector3(x, -y, -z);
            dirs[offset + 4] = new Vector3(-x, y, z);
            dirs[offset + 5] = new Vector3(-x, y, -z);
            dirs[offset + 6] = new Vector3(-x, -y, z);
            dirs[offset + 7] = new Vector3(-x, -y, -z);
            return (offset + 8);
        }
    }

Usage Example

示例#1
0
        public static void InitializeDirections()
        {
            float num = (1f + Mathf.Sqrt(5f)) / 2f;

            TreeAO.directions     = new Vector3[60];
            TreeAO.directions[0]  = new Vector3(0f, 1f, 3f * num);
            TreeAO.directions[1]  = new Vector3(0f, 1f, -3f * num);
            TreeAO.directions[2]  = new Vector3(0f, -1f, 3f * num);
            TreeAO.directions[3]  = new Vector3(0f, -1f, -3f * num);
            TreeAO.directions[4]  = new Vector3(1f, 3f * num, 0f);
            TreeAO.directions[5]  = new Vector3(1f, -3f * num, 0f);
            TreeAO.directions[6]  = new Vector3(-1f, 3f * num, 0f);
            TreeAO.directions[7]  = new Vector3(-1f, -3f * num, 0f);
            TreeAO.directions[8]  = new Vector3(3f * num, 0f, 1f);
            TreeAO.directions[9]  = new Vector3(3f * num, 0f, -1f);
            TreeAO.directions[10] = new Vector3(-3f * num, 0f, 1f);
            TreeAO.directions[11] = new Vector3(-3f * num, 0f, -1f);
            int offset = 12;

            offset = TreeAO.PermuteCuboid(TreeAO.directions, offset, 2f, 1f + 2f * num, num);
            offset = TreeAO.PermuteCuboid(TreeAO.directions, offset, 1f + 2f * num, num, 2f);
            offset = TreeAO.PermuteCuboid(TreeAO.directions, offset, num, 2f, 1f + 2f * num);
            offset = TreeAO.PermuteCuboid(TreeAO.directions, offset, 1f, 2f + num, 2f * num);
            offset = TreeAO.PermuteCuboid(TreeAO.directions, offset, 2f + num, 2f * num, 1f);
            offset = TreeAO.PermuteCuboid(TreeAO.directions, offset, 2f * num, 1f, 2f + num);
            for (int i = 0; i < TreeAO.directions.Length; i++)
            {
                TreeAO.directions[i] = TreeAO.directions[i].normalized;
            }
        }
All Usage Examples Of UnityEditor.TreeAO::PermuteCuboid