Beispiel #1
0
        public List <str> Kurisutina()
        {
            MySqlCommand command = Connection.CreateCommand();

            command.CommandText = "SELECT uwu.id,`surname`, `name`, `otch`,`work`,`salary` FROM a1caida.uwu JOIN  a1caida.owo ON uwu.id_fio = owo.id";
            List <str> bd = new List <str>();

            try
            {
                // Connection.Open();
                using (DbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        str databd = new str
                        {
                            id        = reader.GetString(0),
                            familia   = reader.GetString(1),
                            imya      = reader.GetString(2),
                            otchestvo = reader.GetString(3),
                            rabota    = reader.GetString(4),
                            zarplata  = reader.GetString(5),
                        };
                        bd.Add(databd);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(bd);
        }
Beispiel #2
0
        public List <str> lol()
        {
            MySqlCommand command = Connection.CreateCommand();

            command.CommandText = "SELECT `id`,`surname`, `name`, `otch` FROM a1caida.owo";
            //command.Parameters.AddWithValue("@id", id);
            List <str> bd = new List <str>();

            try
            {
                Connection.Open();
                using (DbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        str databd = new str
                        {
                            id        = reader.GetString(0),
                            familia   = reader.GetString(1),
                            imya      = reader.GetString(2),
                            otchestvo = reader.GetString(3),
                        };
                        bd.Add(databd);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(bd);
        }
        // #define addrfmt(x, s) x.fmt(s, sizeof(s))
        cstr fmt(str s, size_t len)
        {
            memset(s, 0, len);
            byte family = get_family();
            str  i;

            if (family == AF_INET)
            {
                INET_NTOP(family, (uint32 *)&_sin4, s, len);
                i = s;
                while (*++i)
                {
                }
            }
            else
            {
                i = s;
                *i++ = '[';
                INET_NTOP(family, (in6_addr *)&_in._in6addr, i, len - 1);
                while (*++i)
                {
                }
                *i++ = ']';
            }
            snprintf(i, len - (i - s), ":%u", _port);
            return(s);
        }
Beispiel #4
0
    public static void Main(Args _args)
    {
        try
        {
            str tenant            = "XXXXXXX";
            str serviceResourceId = "X-X-X-X-X";
            str clientId          = "X-X-X-X-X";
            str appKey            = "XXXXXXX";
            str functionURL       = "https://XXXXXXX.azurewebsites.net/api/HttpTrigger1?code=XXXXXXX==";
            functionURL += "&name=Dag";

            // Must use 'var' instead of 'System.Threading.Tasks.Task<System.String>' because of the F&O compiler
            var t = PLUtilities.AzureFunctionHelper::authAndCallFunction(tenant, serviceResourceId, clientId, appKey, functionURL);

            t.Wait();
            str s = t.Result;
            info(s);
        }
        catch (Exception::CLRError)
        {
            System.Exception ex = ClrInterop::getLastException();
            if (ex != null)
            {
                ex = ex.get_InnerException();
                if (ex != null)
                {
                    error(ex.ToString());
                }
            }
        }
    }
Beispiel #5
0
        private void Form1_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 5; i++)
            {
                str st = new str();
                st.auto     = new Thread(threadAuto);
                st.velocita = rnd.Next(5, 30);
                st.ar       = false;
                st.pos      = i + 1;
                switch (i)
                {
                case 0:
                    st.pb = pictureBox1;
                    break;

                case 1:
                    st.pb = pictureBox2;
                    break;

                case 2:
                    st.pb = pictureBox3;
                    break;

                case 3:
                    st.pb = pictureBox4;
                    break;

                case 4:
                    st.pb = pictureBox5;
                    break;
                }
                lst.Add(st);
            }
        }
 public Schematic Find(str path)
 {
     if (!str.IsNullOrEmpty(path))
     {
         return(Find(path.ToString()));
     }
     return(null);
 }
Beispiel #7
0
        static void Main()
        {
            Console.WriteLine("What's your name?");
            str input = Console.ReadLine();

            Console.WriteLine($"Hello, {input}!");
            Console.ReadLine();
        }
 // Used to extract last portion of a string which can be split using given separator
 // (e.g. "/Script/FactoryGame.FGInventoryComponent" -> "FGInventoryComponent")
 public static string LastName(this str name, char separator = '.')
 {
     if (str.IsNullOrEmpty(name))
     {
         return(null);
     }
     return(LastName(name.ToString(), separator));
 }
Beispiel #9
0
 public static Item Find(str path)
 {
     if (!str.IsNullOrEmpty(path))
     {
         return(Find(path.ToString()));
     }
     return(null);
 }
 public static BitmapSource GetImage(str object_name, int desired_resolution, VersionTable.Version version)
 {
     if (object_name == null)
     {
         return(null);
     }
     return(GetImage(object_name.ToString(), desired_resolution, version));
 }
Beispiel #11
0
 public Research Find(str path)
 {
     if (!str.IsNullOrEmpty(path))
     {
         return(Find(path.ToString()));
     }
     return(null);
 }
        public str diff(str x1, str x2)
        {
            str res;

            res.x = x1.x - x2.x;
            res.y = x1.y - x2.y;
            res.z = x1.z - x2.z;
            return(res);
        }
        public double angle(str x1, str x2)
        {
            double sum = x1.x * x2.x + x1.y * x2.y + x1.z * x2.z;
            double n1  = Math.Sqrt(x1.x * x1.x + x1.y * x1.y + x1.z * x1.z);
            double n2  = Math.Sqrt(x2.x * x2.x + x2.y * x2.y + x2.z * x2.z);

            sum = Math.Acos(sum / (n1 * n2)) * 180 / Math.PI;
            return(sum);
        }
Beispiel #14
0
        static void Main(string[] args)
        {
            char[] pip = { 'a', 'g', 'r' };
            str    CB1 = new str();
            str    CB2 = new str(pip);
            str    CB3 = new str(CB2);

            CB3 *= 2;
            Console.WriteLine(CB3.getLine());
            CB1 = CB2 + CB3;
            Console.WriteLine(CB1.getLine());
        }
        // Tries to get .Name from property passed, or null if property has no such value
        public static string GetName(this P.Property prop)
        {
            if (prop is P.ValueProperty)
            {
                str s = (prop as P.ValueProperty).Name;
                if (s != null)
                {
                    return(s.ToString());
                }
            }

            return(null);
        }
Beispiel #16
0
            public static str operator *(str inputLine, int n)
            {
                str result = new str(inputLine.len() * n);

                for (int i = 0; i < inputLine.len(); i++)
                {
                    for (int j = 0; j < n; j++)
                    {
                        result.line[n * i + j] = inputLine.line[i];
                    }
                }
                return(result);
            }
Beispiel #17
0
            public static str operator +(str lineFirst, str lineSecond)
            {
                str result = new str(lineFirst.len() + lineSecond.len());

                for (int i = 0; i < result.len(); i++)
                {
                    if (i < lineFirst.len())
                    {
                        result.line[i] = lineFirst.line[i];
                    }
                    else
                    {
                        result.line[i] = lineSecond.line[i - lineFirst.len()];
                    }
                }
                return(result);
            }
Beispiel #18
0
    // Complete the twoStrings function below.
    static string twoStrings(string s1, string s2)
    {
        Dictionary <char, int> strDictA = new Dictionary <char, int>();
        Dictionary <char, int> strDictB = new Dictionary <char, int>();
        str matchingChar = "";

        for (var i = 0; i < s1.Length; i++)
        {
            if (strDictA.ContainsKey(s1[i]))
            {
                strDictA[s1[i]] += 1;
            }
            else
            {
                strDictA.Add(s1[i], 1);
            }
        }
        for (var j = 0; j < s2.Length; j++)
        {
            if (strDictB.Contains(s2[j]))
            {
                strDictB[s2[j]] += 1;
            }
            else
            {
                strDictB.Add(s2[j], 1);
            }
        }
        foreach (var pair in strDictA)
        {
            if (strDictB.ContainsKey(pair.Key))
            {
                Console.WriteLine("Found a matching char: " + pair.Key);
                matchingChar += pair.Key;
                return("YES");
            }
            else
            {
                Console.WriteLine("No match found");
            }
        }
        Console.WriteLine("matchingChar: " + matchingChar);

        return("NO");
    }
        // Find a value property by name
        public static P.Property Named(this P.Properties props, string name, int index = -1)
        {
            if (index < 0)
            {
                int pos = name.IndexOf('#');
                if (pos > 0)
                {
                    string idx = name.Substring(pos + 1);
                    name = name.Substring(0, pos);
                    if (!int.TryParse(idx, out index))
                    {
                        return(null);
                    }
                }
            }
            if (index >= 0)
            {
                return(props.FirstOrDefault(prop => {
                    if (prop is P.ValueProperty)
                    {
                        P.ValueProperty val = prop as P.ValueProperty;
                        str prop_name = val.Name;
                        if (!str.IsNullOrEmpty(prop_name))
                        {
                            return (val.Index == index) && (prop_name.ToString() == name);
                        }
                    }
                    return false;
                }));
            }

            return(props.FirstOrDefault(prop => {
                if (prop is P.ValueProperty)
                {
                    str prop_name = (prop as P.ValueProperty).Name;
                    if (!str.IsNullOrEmpty(prop_name))
                    {
                        return prop_name.ToString() == name;
                    }
                }
                return false;
            }));
        }
Beispiel #20
0
        List <str> zarplata(int id)
        {
            MySqlConnectionStringBuilder stringBuilder = new MySqlConnectionStringBuilder();

            stringBuilder.Server   = "localhost";
            stringBuilder.UserID   = "root";
            stringBuilder.Database = "zarplatalab";
            stringBuilder.SslMode  = MySqlSslMode.None;
            connections            = new MySqlConnection(stringBuilder.ConnectionString);

            MySqlCommand command = connections.CreateCommand();

            command.CommandText = "SELECT zarplata.id, `surname`, `name`, `otch`, `status` ,`money` FROM zarplatalab.zarplata JOIN  zarplatalab.info ON zarplata.fio_id = info.id WHERE fio_id = @id";
            command.Parameters.AddWithValue("@id", id);
            List <str> bd = new List <str>();

            try
            {
                connections.Open();
                using (DbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        str databd = new str
                        {
                            id      = reader.GetString(0),
                            name    = reader.GetString(1),
                            surname = reader.GetString(2),
                            otch    = reader.GetString(3),
                            status  = reader.GetString(4),
                            money   = reader.GetString(5),
                        };
                        bd.Add(databd);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(bd);
        }
        public int mv(double a1, double a2, str c, int flag, int dir)
        {
            // this.semaphore3.Text = "in mv  :zdiff = " + dir * (c.z-prev.z) ;
            int    inval   = flag;
            double tempval = Math.Abs(c.z - hip_center.z);

            if (a1 < 40 && a2 < 40 && tempval < 0.14)
            {
                if (dir == -1)
                {
                    inval = 1;
                }
                else if (flag == 2)
                {
                    inval = 3;
                }
            }
            if (a1 < 40 && a2 < 40 && tempval < 0.23 && tempval > 0.15)
            {
                if (dir == -1 && flag == 1)
                {
                    inval = 2;
                }
                else if (flag == 1)
                {
                    inval = 2;
                }
            }
            if (a1 < 40 && a2 < 40 && tempval > 0.23)
            {
                if (dir == -1 && flag == 2)
                {
                    inval = 3;
                }
                else
                {
                    inval = 1;
                }
            }
            return(inval);
        }
Beispiel #22
0
        //**************************************************************
        List <str> information()
        {
            MySqlConnectionStringBuilder stringBuilder = new MySqlConnectionStringBuilder();

            stringBuilder.Server   = "localhost";
            stringBuilder.UserID   = "root";
            stringBuilder.Database = "zarplatalab";
            stringBuilder.SslMode  = MySqlSslMode.None;
            connections            = new MySqlConnection(stringBuilder.ConnectionString);

            MySqlCommand command = connections.CreateCommand();

            command.CommandText = "SELECT id, name, surname, otch FROM zarplatalab.info";

            List <str> bd = new List <str>();

            try
            {
                connections.Open();
                using (DbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        str databd = new str
                        {
                            id      = reader.GetString(0),
                            name    = reader.GetString(1),
                            surname = reader.GetString(2),
                            otch    = reader.GetString(3),
                        };
                        bd.Add(databd);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(bd);
        }
Beispiel #23
0
        static void Main(string[] args)
        {
            str st1 = new str {
                firstname = "Jey", lastname = "Sel"
            };
            str st2 = new str {
                firstname = "Jayden", lastname = "Had"
            };

            Program.SwapValue <str>(ref st1, ref st2);

            Console.WriteLine("st1 values are {0}, {1}", st1.firstname, st1.lastname);

            Console.WriteLine("Hello World!");
            GenQueue <int> genericQueue = new GenQueue <int>();

            genericQueue.addToQueue(1);



            Console.WriteLine(genericQueue.getFromQueue());
        }
        public void BasicTest()
        {
            const string TestString = "test string";

            str str1 = new str(TestString);

            // test constructor:
            Assert.AreEqual(str1.ToString(), TestString);

            // test directly assign string value
            str str2 = TestString;

            Assert.AreEqual(str2.ToString(), TestString);
            Assert.IsFalse(ReferenceEquals(str1, str2));

            // test Equals
            Assert.IsTrue(str1.Equals(str2));
            Assert.IsTrue(str1.Equals((object)str2));

            // test ==
            Assert.IsTrue(str1 == str2);

            // test !=
            Assert.IsTrue(str1 != new str(TestString + " "));

            // test +
            Assert.IsTrue(str1 + str1 == new str(TestString + TestString));

            // test indexer
            Assert.AreEqual('e', str1[1]);
            str1[1] = 'E';
            Assert.AreEqual(str1, "tEst string");
            str1[1] = 'e';

            // compare with built-in string
            Assert.IsTrue(str1.Equals(TestString));
        }
Beispiel #25
0
        private void threadAuto(object obj)
        {
            str s = (str)obj;

            while (!s.ar)
            {
                if (s.pb.Location.X > 900)
                {
                    BeginInvoke((MethodInvoker) delegate()
                    {
                        s.ar           = true;
                        textBox1.Text += "macchina " + s.pos;
                    });
                }
                else
                {
                    BeginInvoke((MethodInvoker) delegate()
                    {
                        s.pb.Left += s.velocita;
                    });
                    Thread.Sleep(100);
                }
            }
        }
Beispiel #26
0
 public override obj cast(str typename)
 {
     return nilsrc.nil;
 }
Beispiel #27
0
 GetValueOrNull(int.TryParse(str, NumberStyles.Integer, SelectCulture(cultureInfo), out var parsedValue), parsedValue);
        public int mv(double a1, double a2, str c, int flag, int dir)
        {
            // this.semaphore3.Text = "in mv  :zdiff = " + dir * (c.z-prev.z) ;
            int inval = flag;
            double tempval = Math.Abs(c.z - hip_center.z);
            if (a1 < 40 && a2 < 40 && tempval < 0.14)
            {
                if (dir == -1)
                { inval = 1; }
                else if (flag == 2)
                {
                    inval = 3;
                }
            }
            if (a1 < 40 && a2 < 40 && tempval < 0.23 && tempval > 0.15)
            {
                if (dir == -1 && flag == 1)
                { inval = 2; }
                else if (flag == 1)
                {
                    inval = 2;
                }

            }
            if (a1 < 40 && a2 < 40 && tempval > 0.23)
            {
                if (dir == -1 && flag == 2)
                { inval = 3; }
                else
                {
                    inval = 1;
                }
            }
            return inval;
        }
Beispiel #29
0
 public override obj cast(str typename)
 {
     return undefinedsrc.undefined;
 }
 public double angle(str x1, str x2)
 {
     double sum = x1.x * x2.x + x1.y * x2.y + x1.z * x2.z;
     double n1 = Math.Sqrt(x1.x * x1.x + x1.y * x1.y + x1.z * x1.z);
     double n2 = Math.Sqrt(x2.x * x2.x + x2.y * x2.y + x2.z * x2.z);
     sum = Math.Acos(sum / (n1 * n2)) * 180 / Math.PI;
     return sum;
 }
 public str diff(str x1, str x2)
 {
     str res;
     res.x = x1.x - x2.x;
     res.y = x1.y - x2.y;
     res.z = x1.z - x2.z;
     return res;
 }
Beispiel #32
0
 { typeof(int), (str => (int)double.Parse(str, CultureInfo.InvariantCulture), 0) },
Beispiel #33
0
 static protected (bool ok, float val) SingleParse(string str) => float.TryParse(str, _numberStyle, null, out float v) ? (true, v) : (false, 0);
 BCLDebug.Trace("DATETIME", "[DATETIME] Lex({0})\tpos:{1}({2}), {3}, DS.{4}", Hex(str.Value),
 str.Index, Hex(str.m_current), tokenType, dps);
        void nui_DepthFrameReady(object sender, ImageFrameReadyEventArgs e)
        {
            PlanarImage Image = e.ImageFrame.Image;

            byte[] convertedDepthFrame = convertDepthFrame(Image.Bits);

            depth.Source = BitmapSource.Create(
                Image.Width, Image.Height, 96, 96, PixelFormats.Bgr32, null, convertedDepthFrame, Image.Width * 4);

            //++totalFrames;

            DateTime cur = DateTime.Now;

            /* if (cur.Subtract(lastTime) > TimeSpan.FromSeconds(1))
             * {
             *   int frameDiff = totalFrames - lastFrames;
             *   lastFrames = totalFrames;
             *   lastTime = cur;
             *   // frameRate.Text = frameDiff.ToString() + " fps by team 16";
             * }
             * /
             * /*
             */
            str r_we  = diff(r_wrist, r_elbow);
            str r_es  = diff(r_elbow, r_shldr);
            str r_se  = diff(r_shldr, r_elbow);
            str mid   = diff(shldr_center, hip_center);
            str pln   = diff(r_shldr, l_shldr);
            str r_wc  = diff(shldr_center, r_wrist);
            str r_hw  = diff(r_hand, r_wrist);
            str sl_sr = diff(l_shldr, r_shldr);

            str l_we = diff(l_wrist, l_elbow);
            str l_es = diff(l_elbow, l_shldr);
            str l_se = diff(l_shldr, l_elbow);
            str l_wc = diff(shldr_center, l_wrist);
            str l_hw = diff(l_hand, l_wrist);



            str r_pt;

            r_pt   = r_wrist;
            r_pt.x = r_shldr.x;
            str l_pt;

            l_pt   = l_wrist;
            l_pt.x = l_shldr.x;
            str r_req = diff(r_shldr, r_pt);
            str l_req = diff(l_shldr, l_pt);

            zin1 = angle(shldr_center, sl_sr);
            zin2 = angle(shldr_center, r_se);

            //double zvar = angle(shldr_center, r_es);

            double rx1 = angle(r_we, r_es);
            double rx2 = angle(r_es, mid);

            double rx3  = angle(r_se, r_we);
            double rx4  = angle(r_wc, pln);
            double rx5  = angle(r_wc, mid);
            double rx6  = angle(sl_sr, r_se);
            double rx8  = angle(r_we, mid);
            double rx7  = angle(r_we, pln);
            double rx9  = angle(r_es, pln);
            double rx10 = angle(r_req, mid);



            double lx1 = angle(l_we, l_es);
            double lx2 = angle(l_es, mid);

            double lx3  = angle(l_se, l_we);
            double lx4  = angle(l_wc, pln);
            double lx5  = angle(l_wc, mid);
            double lx6  = angle(sl_sr, l_se);
            double lx8  = angle(l_we, mid);
            double lx7  = angle(l_we, pln);
            double lx9  = angle(l_es, pln);
            double lx10 = angle(l_req, mid);

            //rm_fwd=c1(x1, x2+90,rm_fwd,1,zin1-zin2);
            //rm_bck = c1(x1, x2 + 90, rm_bck, -1,zin1-zin2);
            //rm_start = c1(x1,x2+90,rm_start,-1,Math.Abs(x9-90));
            //rm_fwd = c1(x1-90,x3,rm_fwd,-1);
            //rm_bck = c1(x2 - 90, x3, rm_bck, 1);
            //r_rot = c1(x5 - 90, x4, r_rot, 1,0);
            //r_is = mv(x7 - 90, x8 - 90, r_wrist, r_is, -1);
            //r_rot = mv(x7 - 90, x8 - 90, r_wrist, r_rot, 1);
            //this.semaphore1.Text = "mv : 1st arg = " +  (x7-90)+" 2rd arg = " + (x8-90) ;
            //this.semaphore2.Text = "r_mv = "+ r_is.ToString();
            //this.semaphore3.Text = "zdiff = " + (r_wrist.z - hip_center.z);


            this.semaphore1.Text = "rx 2,9 :" + rx2 + " " + rx9 + " ";
            this.semaphore2.Text = "rx 7,3 : " + rx7 + " " + rx3;
            this.semaphore3.Text = "lx 2,9 :" + lx2 + " " + lx9;
            this.semaphore4.Text = "lx 7,3 : " + lx7 + " " + lx3;
            this.semaphore5.Text = "rx 8,lx 8 : " + rx8 + " " + lx8;
            //DECIDING THE MODE

            if (check(rx2 - 90, rx9, rx7 - 90, rx8) == 1)
            {
                //WHEN BOTH LEFT AND RIGHT HANDS ARE IN POSITION AS REQUIRED (GRIPPER MODE)
                mode       = 3;
                lastFrames = 0;
                char x = (char)mode;
                this.serialPort.Write(x.ToString());
            }
            else if (check(rx2 - 90, rx9 - 90, rx7 - 90, rx8) == 1)
            {
                //WHEN RIGHT HAND IS IN POSITION (LONG RANGE MODE)
                mode       = 1;
                lastFrames = 0;
                char x = (char)mode;
                this.serialPort.Write(x.ToString());
            }
            else if (check(lx2 - 90, lx9 - 90, lx7 - 90, lx8) == 1)
            {
                //WHEN LEFT HAND IS IN POSTION (FINE CONTROL MODE)
                mode       = 2;
                lastFrames = 0;
                char x = (char)mode;
                this.serialPort.Write(x.ToString());
            }
            else
            {
                //lastFrames=0;
            }
            this.semaphore.Text = "MODE : " + mode;
            //WHEN IN MODE 1 i.e. long range motion (* put if condition)

            if (mode == 1)
            {
                //FOR FORWARD MOTION
                if (check(rx2 - 90, rx9 - 90, rx7 - 90, rx8 - 90) == 1 && check(lx2 - 90, lx9 - 90, lx7 - 90, lx8 - 90) == 1)
                {
                    //COMMUNICATE SIGNAL CORRESPONDING TO THIS
                    this.semaphore.Text = "IN MODE 1 FORWARD MOTION DETECTED";
                    char x = (char)8;
                    this.serialPort.Write(x.ToString());
                    lastFrames = 0;
                }

                //FOR STOP
                else if (check(rx2, rx9 - 90, rx7 - 90, rx8) == 1)
                {
                    //STOP
                    this.semaphore.Text = "STOP";
                    char x = (char)5;
                    this.serialPort.Write(x.ToString());
                    lastFrames = 0;
                }

                else if (check(rx2 - 180, rx9 - 90, rx3 - 90, rx7 - 90) == 1 && check(lx2 - 180, lx9 - 90, lx3 - 90, lx7 - 90) == 1)
                {
                    //BACK
                    this.semaphore.Text = "BACK";
                    char x = (char)9;
                    this.serialPort.Write(x.ToString());
                    lastFrames = 0;
                }
                //ANGLE ROTATION
                else if (check(rx2 - 90, 0, rx3 - 180, rx8 - 90) == 1)
                {
                    //SEND ANGLE BETWEEN HAND AND PLN
                    curangle = rx9;
                    if (lastFrames == 0)
                    {
                        initangle = curangle;
                    }
                    lastFrames++;

                    this.semaphore.Text = "IN MODE 1 ANGLE DETECTION : " + send + " s : " + s.ToString();
                    if (lastFrames >= totalFrames)
                    {
                        send = -(Convert.ToInt32(curangle) - Convert.ToInt32(initangle));
                        if (send < 10 && send > -10)
                        {
                            send = 0;
                        }
                        if (send < 0)
                        {
                            send = 45 - send;
                        }
                        send += 10;

                        s = (char)send;

                        this.serialPort.Write(s.ToString());
                        lastFrames = 0;
                    }
                }
                else
                {
                    lastFrames = 0;
                }
            }

            //WHEN IN MODE 2
            else if (mode == 2)
            {
                if (check(rx8 - 90, rx7 - 90, rx9 - 90, 0) == 1 && check(lx8 - 90, lx7 - 90, lx9 - 90, 0) == 1)
                {
                    //RETURN L_WRIST.Z,R_WRIST.Z
                    this.semaphore.Text = "IN MODE 2 : " + r_wrist.z;
                }
            }
            //WHEN IN MODE 3
            else if (mode == 3)
            {
                if (check(rx3 - 180, 0, 0, 0) == 1 && check(lx3 - 180, 0, 0, 0) == 1)
                {
                    lastFrames++;
                    //RETURN rx10,lx10;
                    //RETURN rx9,lx9
                    if (lastFrames >= totalFrames)
                    {
                        lastFrames = 0;
                        if (rx10 > 90)
                        {
                            rx10 = 90;
                        }
                        int send = Convert.ToInt32(rx10 * (9.0 / 10) + 30);

                        char x = (char)send;
                        this.serialPort.Write(x.ToString());
                        if (rx9 > 90)
                        {
                            rx9 = 90;
                        }
                        send = Convert.ToInt32(rx9 * (4.0 / 9) + 80);
                        x    = (char)send;
                        this.serialPort.Write(x.ToString());
                    }
                    this.semaphore.Text = "IN MODE 3 : rx9,10" + rx9 + " " + rx10;
                }
            }
        }
        // This function turns on the heater coils according to the string
        // parameter passed to it. Usable string parameters are: "all", "0",
        // "1", "2", and "none"; "all" and "none" turn on/off all the coils,
        // while "0", "1", "2" turns on the coil corresponding to that channel
        // output from the USB-TC device.
        private void TC_channel_out(str channel)
        {
            MccBoard daq = new MccDaq.MccBoard(BoardNum);
            MccDaq.ErrorInfo RetVal;

            for (int i = 0; i < 6; i++)
            {
                RetVal = daq.DConfigBit(DigitalPortType.AuxPort, i,
                    DigitalPortDirection.DigitalOut);
                IsError(this,RetVal,true);
            }

            switch (channel)
            {
                case "all_coils":
                    for (int i = 0; i < 3; i++)
                    {
                        RetVal = daq.DBitOut(DigitalPortType.AuxPort, i,
                            DigitalLogicState.High);
                        IsError(this,RetVal, true);
                    }
                    break;

                case "no_coils":
                    for (int i = 0; i < 3; i++)
                    {
                        RetVal = daq.DBitOut(DigitalPortType.AuxPort, i,
                            DigitalLogicState.Low);
                        IsError(this,RetVal, true);
                    }
                    break;

                case "no_air":
                    for (int i = 3; i < 6; i++)
                    {
                        RetVal = daq.DBitOut(DigitalPortType.AuxPort, i,
                            DigitalLogicState.Low);
                        IsError(this,RetVal, true);
                    }
                    break;

                case "inner":
                    RetVal = daq.DBitOut(DigitalPortType.AuxPort, 0,
                        DigitalLogicState.High);
                    IsError(this,RetVal, true);
                    break;

                case "sample_zone":
                    RetVal = daq.DBitOut(DigitalPortType.AuxPort, 1,
                        DigitalLogicState.High);
                    IsError(this,RetVal, true);
                    break;

                case "outer":
                    RetVal = daq.DBitOut(DigitalPortType.AuxPort, 2,
                        DigitalLogicState.High);
                    IsError(this,RetVal, true);
                    break;

                case "high_n2":
                    RetVal = daq.DBitOut(DigitalPortType.AuxPort, 3,
                        DigitalLogicState.High);
                    IsError(this, RetVal, true);
                    break;

                case "air":
                    RetVal = daq.DBitOut(DigitalPortType.AuxPort, 4,
                        DigitalLogicState.High);
                    IsError(this, RetVal, true);
                    break;

                case "low_n2":
                    RetVal = daq.DBitOut(DigitalPortType.AuxPort, 5,
                        DigitalLogicState.High);
                    IsError(this, RetVal, true);
                    break;

                default:
                    RetVal = new ErrorInfo(1);
                    MessageBox.Show("TC_channel_out() called with invalid parameter!",
                        "   " + "ERROR!");
                    break;
            }

            RetVal = daq.DConfigBit(DigitalPortType.AuxPort, 0,
                DigitalPortDirection.DigitalOut);

            if (IsError(this, RetVal, true) == 0)
            {
                MessageBox.Show("TC_out function error!");
                return;
            }
        }
        public double comp(str s1, str s2)
        {
            double nor = Math.Sqrt(s1.x * s1.x + s1.y * s1.y + s1.z * s1.z);

            return((s1.x * s2.x + s1.y * s2.y + s1.z * s2.z) / nor);
        }
 PidgeonLogger.LogMessage(str);
 public double comp(str s1, str s2)
 {
     double nor = Math.Sqrt(s1.x * s1.x + s1.y * s1.y + s1.z * s1.z);
     return (s1.x * s2.x + s1.y * s2.y + s1.z * s2.z) / nor;
 }