Data/Cube.cs

(开头部分) 10KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System.Collections.Generic;

namespace Cube.Data
{
    class Cube
    {
        private List<Block> Blocks;
        public Cube()
        {
            Blocks = new List<Block>();
            InitCube3();
        }
        public Cube(List<Block> blocks)
        {
            Blocks = new List<Block>();
            foreach(var block in blocks)
            {
                Blocks.Add(block.Clone());
            }
        }
        public Cube Clone()
        {
            return new Cube(Blocks);
        }
        public ColorVector this[PositionVector index]
        {
            get
            {
                foreach(var block in Blocks)
                {
                    if (block.Position.X == index.X && block.Position.Y == index.Y && block.Position.Z == index.Z)
                    {
                        return block.ColorVector;
                    }
                }
                throw new System.IndexOutOfRangeException();
            }
        }

        public Block this[int index]
        {
            get
            {
                return Blocks[index];
            }
        }

        public int FindCubeByPosition(PositionVector position)
        {
            foreach(var block in Blocks)
            {
                if (block.Position.Equals(position))
                {
                    return Blocks.IndexOf(block);
                }
            }
            return -1;
        }

        public CubeColor[,] GetFace(Faces faceIndex)
后面还有 209 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。