Esempio n. 1
0
        //private List<List<Coords>> GetLaneCellSatinStitches(List<Lane> lanes)
        //{
        //    List<List<Coords>> blockList = new List<List<Coords>>();
        //    int ln = 0;
        //    foreach (var lane in lanes)
        //    {
        //        if (lane.Dot2.Y > lane.Dot1.Y)
        //            blockList.Add(GenerateVerticalTiledColumnStitchBlock(lane.Dot1.X, lane.Dot1.Y, lane.Length));
        //        else blockList.Add(ReverseCoords(GenerateVerticalTiledColumnStitchBlock(lane.Dot2.X, lane.Dot2.Y, lane.Length)));
        //        ln++;

        //    }
        //    return blockList;
        //}


        /// <summary>
        /// Converts <see cref="List<List<Coords>>"/> to <see cref="List<CoordsBlock>"/>
        /// </summary>
        /// <param name="listBlocks"></param>
        /// <returns></returns>
        //List<CoordsBlock> GetListOfCoordsBlock(List<List<Coords>> listBlocks)
        //{

        //    List<CoordsBlock> reslult = new List<CoordsBlock>();
        //    CoordsBlock prevBlock = null;
        //    foreach (var block in listBlocks)
        //    {
        //        if (prevBlock != null)
        //        {
        //            var jumpBlock = new CoordsBlock() { Jumped = true};
        //            jumpBlock.Add(prevBlock.Last());
        //            jumpBlock.Add(block.First());
        //            reslult.Add(jumpBlock);
        //        }
        //        CoordsBlock coordsBlock = new CoordsBlock();
        //        foreach (var coords in block)
        //            coordsBlock.Add(coords);
        //        reslult.Add(coordsBlock);
        //        prevBlock = coordsBlock;

        //    }
        //    return reslult;
        //}

        private List <CoordsBlock> GetNegativatedYListOfCoordsBlock(List <List <Coords> > listBlocks)
        {
            List <CoordsBlock> reslult = new List <CoordsBlock>();
            CoordsBlock        coordsBlock;

            // CoordsBlock prevBlock = null;
            foreach (var block in listBlocks)
            {
                coordsBlock = new CoordsBlock();
                foreach (var coords in block)
                {
                    coords.Y = -coords.Y;
                    coordsBlock.Add(coords);
                }

                reslult.Add(coordsBlock);
            }
            return(reslult);
        }
Esempio n. 2
0
        List <CoordsBlock> GetListCoordsBlock(IEnumerable <List <Coords> > listCoords)
        {
            if (listCoords == null)
            {
                return(null);
            }
            var result = new List <CoordsBlock>();

            foreach (var listCoord in listCoords)
            {
                var block = new CoordsBlock {
                    Color = Color.Black
                };
                listCoord.ForEach(coord => coord.Y = -coord.Y);
                block.AddRange(listCoord);
                result.Add(block);
            }
            return(result);
        }