コード例 #1
0
        protected override void InitGrid()
        {
            VectorPoint rectDimensions = Dimensions;

            switch (shape)
            {
            case Shape.Rectangle:
                base.Grid = PointyTriGrid <TileCell> .Rectangle(rectDimensions.X, rectDimensions.Y);

                break;

            case Shape.Parallelogram:
                base.Grid = PointyTriGrid <TileCell> .ParallelogramXY(rectDimensions.X, rectDimensions.Y);

                break;

            case Shape.ThinRectangle:
                base.Grid = PointyTriGrid <TileCell> .ThinRectangle(rectDimensions.X, rectDimensions.Y);

                break;

            case Shape.FatRectangle:
                base.Grid = PointyTriGrid <TileCell> .FatRectangle(rectDimensions.X, rectDimensions.Y);

                break;

            case Shape.LeftTriangle:
                base.Grid = PointyTriGrid <TileCell> .LeftTriangle(size);

                break;

            case Shape.RightTriangle:
                base.Grid = PointyTriGrid <TileCell> .RightTriangle(size);

                break;

            case Shape.Hexagon:
                base.Grid = PointyTriGrid <TileCell> .Hexagon(size);

                break;

            case Shape.Star:
                base.Grid = PointyTriGrid <TileCell> .Star(size);

                break;

            case Shape.Single:
                base.Grid = PointyTriGrid <TileCell> .Single();

                break;

            case Shape.SingleGroup:
                base.Grid = PointyTriGrid <TileCell> .SingleGroup();

                break;

            case Shape.Custom:
                base.Grid = GetCustomGrid();
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }