示例#1
0
文件: Zone.cs 项目: andreyV512/rag
 public override string ToString()
 {
     return(string.Format("{0}={1} length={2}", Classer.ETypeStr(type), Classer.ToStr(Class), VZoneLength.ToString()));
 }
示例#2
0
文件: Zone.cs 项目: andreyV512/rag
 public string ToString(int _index)
 {
     return(string.Format("{0}[{1}]={2} length={3}", Classer.ETypeStr(type), _index.ToString(), Classer.ToStr(Class), VZoneLength.ToString()));
 }
示例#3
0
        public string SendResult(Result _Result)
        {
            if (_Result == null)
            {
                return(SendResultTest());
            }
            int size = 1024;

            byte[] data = new byte[size];
            RByteConverter.IntToByte(IsLittleEndian, _Result.IdTube, data, 0, 3);
            int x = 3;

            data[x++] = Convert.ToByte(Classer.ToIntACS(_Result.Sum.RClass));
            data[x++] = 0;
            data[x++] = Convert.ToByte(_Result.Sum.MClass.Count);
            data[x++] = 0;
            data[x++] = 0;
            data[x++] = Convert.ToByte(Math.Round(ParAll.CTS.Cross.Border1));
            data[x++] = Convert.ToByte(Math.Round(ParAll.CTS.Cross.Border2));
            data[x++] = Convert.ToByte(Math.Round(ParAll.CTS.Line.Border1));
            data[x++] = Convert.ToByte(Math.Round(ParAll.CTS.Line.Border2));
            data[x++] = 0;
            data[x++] = 0;
            data[x++] = Convert.ToByte(Math.Round(_Result.Thick.Border1 * 10));
            data[x++] = Convert.ToByte(Math.Round(_Result.Thick.Border2 * 10));
            data[x++] = 0;
            data[x++] = 0;
            data[x++] = Convert.ToByte(SGToInt(_Result.SG.sgState.Group));
            data[x++] = 0;
            data[x++] = 0;
            data[x++] = 0;
            data[x++] = 0;
            for (int i = 0; i < 130; i++)
            {
                data[x++] = (i >= _Result.Thick.MZone.Count) ? Convert.ToByte(128) : GetLevel(_Result.Thick.MZone[i].RClass, _Result.Thick.MZone[i].Level);
            }
            for (int i = 0; i < 130; i++)
            {
                data[x++] = (i >= _Result.Cross.MZone.Count) ? Convert.ToByte(128) : GetLevel(_Result.Cross.MZone[i].Class, _Result.Cross.MZone[i].GetMaxLevel());
            }
            for (int i = 0; i < 130; i++)
            {
                data[x++] = (i >= _Result.Line.MZone.Count) ? Convert.ToByte(128) : GetLevel(_Result.Line.MZone[i].Class, _Result.Line.MZone[i].GetMaxLevel());
            }
            for (int i = 0; i < 130; i++)
            {
                data[x++] = 128;
            }
            Array.Resize(ref data, x);
            PacketOut pOut = new PacketOut(IsLittleEndian)
            {
                command = 5
            };

            pOut.data = data;
            if (!comPort.Write(pOut.Serial))
            {
                return("Не смогли записать");
            }
            return("Ok");
        }