示例#1
0
 // Use this for initialization
 void Start()
 {
     joycons = JoyconManager.Instance.j;
     bug     = false;
     if (joycons.Count == 2)
     {
         if (initJoycons())
         {
             aPressed    = false;
             timeCounter = 0;
             speed       = 1;
             //Initialisation des données pour la force d'impact.
             minForce    = 500f;
             force       = minForce;
             maxForce    = 1000f;
             forceIncr   = -5;
             currentMode = MODE.ORIENTATION;
             bInstance   = GameObject.Find("Punching Ball").GetComponent <MG_PBall_PBall>();
             bInstance.setPlayerMode(currentMode.ToString());
             gameObject.GetComponent <Renderer>().material.color = Color.black;
             gameObject.GetComponent <Rigidbody>().constraints   = RigidbodyConstraints.FreezePosition | RigidbodyConstraints.FreezeRotation;
         }
         else
         {
             Debug.Log("Absence du joycon droit ou gauche.");
             bug = true;
         }
     }
     else
     {
         Debug.Log("Pas assez ou trop de joycons détectés. Un joycon droit et un gauche nécessaires.");
         bug = true;
     }
 }
        /// <summary>
        /// Чтение зашифрованного файла конфигурации с параметрами соединения
        /// </summary>
        /// <param name="notUsed">не используется (-1), для совместимости с типом делегата</param>
        /// <param name="listConnSett">выходной список объектов с параметрами соедений</param>
        /// <param name="res">результат выполнения функции</param>
        /// <param name="mes">сообщение после выполнения операции</param>
        public void ReadSettingsFile(int notUsed, out List <ConnectionSettings> listConnSett, out int res, out string mes)
        {
            //MessageBox.Show (null, m_mode.ToString (), );
            Console.WriteLine(@"FileConnSett::ReadSettingsFile () - mode=" + m_mode.ToString());

            if ((m_mode == MODE.FILE) && (File.Exists(m_arg) == false))
            {//Не найден файл
                listConnSett = new List <ConnectionSettings>();
                res          = 1;
                mes          = "Не найден файл: " + m_arg;
            }
            else
            {
                res = ParseSettingsFile(out listConnSett, out mes);
            }
        }
示例#3
0
        private int HandleMode(MODE mode, int parameter)
        {
            int returnValue = 0;

            switch (mode)
            {
            case  MODE.position:
                returnValue = this.Memory[parameter];
                break;

            case MODE.immediate:
                returnValue = parameter;
                break;

            default:
                throw new ArgumentException("Unknown Mode: " + mode.ToString());
            }
            return(returnValue);
        }
示例#4
0
        private void setModeDependentLayout()
        {
            lblTitle.Text = Resources.GetString(mode.ToString());

            switch (mode)
            {
            case MODE.StockMovement:
            {
                lblNewStock.Visible    = false;
                txtNewStock.Visible    = false;
                lblNewStockUOM.Visible = false;

                lblCostPlace.Visible = true;
                ddlCostPlace.Visible = true;
                lblAmount.Visible    = true;
                txtAmount.Visible    = true;
                lblAmountUOM.Visible = true;

                ddlCostPlace.DataSource    = service.GetCostPlaces();
                ddlCostPlace.ValueMember   = "Id";
                ddlCostPlace.DisplayMember = "Name";

                break;
            }

            case MODE.StockCount:
            {
                lblNewStock.Visible    = true;
                txtNewStock.Visible    = true;
                lblNewStockUOM.Visible = true;

                lblCostPlace.Visible = false;
                ddlCostPlace.Visible = false;
                lblAmount.Visible    = false;
                txtAmount.Visible    = false;
                lblAmountUOM.Visible = false;

                break;
            }
            }
        }
        private void initForm()
        {
            _availableModes = new List <string>();
            Enum.GetNames(typeof(MODE)).ToList().ForEach(mode =>
            {
                cbValidationMode.Items.Add(mode);
                _availableModes.Add(mode);
            });

            if (cbValidationMode.Items.Count > 0)
            {
                try
                {
                    _validationMode = (MODE)Enum.Parse(typeof(MODE), cbValidationMode.Items[0].ToString(), false);
                    cbValidationMode.SelectedItem = _validationMode.ToString();
                }
                catch (ArgumentException)
                {
                    MessageBox.Show("Invalid Voting Scheme.");
                    _validationMode = (MODE)Enum.Parse(typeof(MODE), _availableModes.First(), false);
                    cbValidationMode.SelectedItem = _validationMode.ToString();
                }
            }
        }
示例#6
0
        public static async Task <bool> CheckInputV(MODE mode)
        {
            await Task.Delay(1500);

            bool result   = false;
            bool result下限 = false;
            bool result上限 = false;

            string resultData = "";

            const int SampleCnt = 5;

            var ListData = new List <double>();

            State.VmTestStatus.TestLog += $" {mode.ToString()} 5V確認";

            //ローカル関数の定義■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            void GetData()
            {
                General.ClearCommlog();
                Target.SendData("V_IN");

                while (true)//取り込んだ通信データが規定行数(サンプリング数)になるまで待つ
                {
                    if (Flags.ClickStopButton)
                    {
                        return;
                    }
                    if (General.CountNewline() == SampleCnt + 2)
                    {
                        break;
                    }
                }
                Target.Escape();
                int offset = 0;

                switch (mode)
                {
                case MODE.V_1:
                    offset = 1;
                    break;

                case MODE.V_2:
                    offset = 2;
                    break;

                case MODE.V_3:
                    offset = 3;
                    break;

                case MODE.V_4:
                    offset = 4;
                    break;
                }


                int 検索開始位置 = 0;

                var log = State.VmComm.RX;

                foreach (var i in Enumerable.Range(0, SampleCnt))
                {
                    int FoundIndex = log.IndexOf("V_IN,", 検索開始位置);
                    int 改行位置       = log.IndexOf("\r\n", FoundIndex);
                    var 取り出し1行     = log.Substring(FoundIndex, 改行位置 - FoundIndex);
                    var dataList   = 取り出し1行.Split(',');

                    ListData.Add(Double.Parse(dataList[offset]));
                    検索開始位置 = FoundIndex + 1;
                }
            };

            //■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

            try
            {
                return(await Task <bool> .Run(() =>
                {
                    //電源ONする処理
                    General.PowerSupply(true);
                    if (!General.CheckDemo表示())
                    {
                        return false;
                    }

                    HIOKI7012.OutDcV(5.000);
                    Sleep(2000);
                    GetData();
                    Sleep(500);
                    HIOKI7012.StopSource();
                    General.PowerSupply(false);

                    result下限 = ListData.All(data => data >= State.TestSpec.V_5V_Min);
                    result上限 = ListData.All(data => data <= State.TestSpec.V_5V_Max);
                    result = result下限 && result上限;

                    ListData.Sort();
                    if (result)
                    {
                        resultData = ListData[SampleCnt / 2].ToString("F3") + "V";//中央値
                    }
                    else
                    {
                        if (!result下限)
                        {
                            resultData = ListData[0].ToString("F3") + "V";//Min
                        }
                        else
                        {
                            resultData = ListData[SampleCnt - 1].ToString("F3") + "V";//Max
                        }
                    }

                    return result;
                }));
            }
            catch
            {
                return(false);
            }
            finally
            {
                State.VmTestStatus.TestLog += result? "---PASS\r\n" : "---FAIL\r\n";
                HIOKI7012.StopSource();
                General.PowerSupply(false);


                switch (mode)
                {
                case MODE.V_1:
                    State.VmTestResults.V1_5V    = resultData;
                    State.VmTestResults.ColV1_5V = result ? OffBrush : NgBrush;
                    break;

                case MODE.V_2:
                    State.VmTestResults.V2_5V    = resultData;
                    State.VmTestResults.ColV2_5V = result ? OffBrush : NgBrush;
                    break;

                case MODE.V_3:
                    State.VmTestResults.V3_5V    = resultData;
                    State.VmTestResults.ColV3_5V = result ? OffBrush : NgBrush;
                    break;

                case MODE.V_4:
                    State.VmTestResults.V4_5V    = resultData;
                    State.VmTestResults.ColV4_5V = result ? OffBrush : NgBrush;
                    break;
                }
            }
        }
示例#7
0
        public static async Task <bool> SetInputV(MODE mode)
        {
            bool FlagTimeout = false;

            System.Timers.Timer Tm;

            //タイマー(ウィンドウハンドル取得用)の設定
            Tm          = new System.Timers.Timer();
            Tm.Enabled  = false;
            Tm.Interval = 10000;
            Tm.Elapsed += (o, e) =>
            {
                Tm.Stop();
                FlagTimeout = true;
            };


            bool result第一調整点 = false;
            bool result第二調整点 = false;

            string Data第一調整点 = "";
            string Data第二調整点 = "";

            string Data第一調整点再 = "";
            string Data第二調整点再 = "";

            State.VmTestStatus.TestLog += $" {mode.ToString()} 調整";

            //ローカル関数の定義■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            string GetData(string command)
            {
                General.ClearCommlog();
                Target.SendData(command);

                Tm.Stop();
                FlagTimeout = false;
                Tm.Start();
                while (true)//取り込んだ通信データが規定行数(サンプリング数)になるまで待つ
                {
                    if (FlagTimeout || Flags.ClickStopButton)
                    {
                        return(null);
                    }
                    if (General.CountNewline() == 2)
                    {
                        break;
                    }
                }
                Target.Escape();
                Sleep(1000);
                var log        = State.VmComm.RX;
                int FoundIndex = log.IndexOf(command + ",");
                int 改行位置       = log.IndexOf("\r\n", FoundIndex);
                var 取り出し1行     = log.Substring(FoundIndex, 改行位置 - FoundIndex);
                var dataList   = 取り出し1行.Split(',');

                return(dataList[2].Substring(1));//一文字目がスペースなので削除
            };

            List <string> GetData再(string command)
            {
                General.ClearCommlog();
                Target.SendData(command);

                Tm.Stop();
                FlagTimeout = false;
                Tm.Start();
                while (true)//取り込んだ通信データが規定行数(サンプリング数)になるまで待つ
                {
                    if (FlagTimeout || Flags.ClickStopButton)
                    {
                        return(null);
                    }
                    if (General.CountNewline() == 2)
                    {
                        break;
                    }
                }
                Target.Escape();
                Sleep(1000);
                var log        = State.VmComm.RX;
                int FoundIndex = log.IndexOf(command + ",");
                int 改行位置       = log.IndexOf("\r\n", FoundIndex);
                var 取り出し1行     = log.Substring(FoundIndex, 改行位置 - FoundIndex);
                var dataList   = 取り出し1行.Split(',');

                return(new List <string>()
                {
                    dataList[1].Substring(1), dataList[2].Substring(1)
                });                                                                               //一文字目がスペースなので削除
            };
            //■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

            try
            {
                return(await Task <bool> .Run(() =>
                {
                    string command = "";
                    switch (mode)
                    {
                    case MODE.V_1:
                        //メッセージボックス表示("CN2にシグナルソース(電圧端子)を接続してください");
                        General.Set7012Source(General.SOURCE_CH.V1);
                        command = "V1";
                        break;

                    case MODE.V_2:
                        //メッセージボックス表示("CN4にシグナルソース(電圧端子)を接続してください");
                        General.Set7012Source(General.SOURCE_CH.V2);
                        command = "V2";
                        break;

                    case MODE.V_3:
                        //メッセージボックス表示("CN6にシグナルソース(電圧端子)を接続してください");
                        General.Set7012Source(General.SOURCE_CH.V3);
                        command = "V3";
                        break;

                    case MODE.V_4:
                        //メッセージボックス表示("CN8にシグナルソース(電圧端子)を接続してください");
                        General.Set7012Source(General.SOURCE_CH.V4);
                        command = "V4";
                        break;
                    }
                    Sleep(500);
                    //電源ONする処理
                    General.PowerSupply(true);
                    if (!General.CheckDemo表示())
                    {
                        return false;
                    }

                    HIOKI7012.OutDcV(0.500);
                    Sleep(2000);
                    Data第一調整点 = GetData(command + "1");
                    if (Data第一調整点 == null)
                    {
                        return false;
                    }
                    Sleep(500);

                    HIOKI7012.OutDcV(10.000);
                    Sleep(2000);
                    Data第二調整点 = GetData(command + "2");
                    if (Data第二調整点 == null)
                    {
                        return false;
                    }
                    Sleep(500);

                    General.PowerSupply(false);
                    Sleep(1000);

                    //電源ONする処理
                    General.PowerSupply(true);
                    if (!General.CheckDemo表示())
                    {
                        return false;
                    }

                    var ListData再 = GetData再("@" + command + "*");
                    if (ListData再 == null)
                    {
                        return false;
                    }

                    Data第一調整点再 = ListData再[0];
                    Data第二調整点再 = ListData再[1];

                    result第一調整点 = Data第一調整点 == Data第一調整点再;
                    result第二調整点 = Data第二調整点 == Data第二調整点再;

                    return result第一調整点 && result第二調整点;
                }));
            }
            catch
            {
                return(false);
            }
            finally
            {
                State.VmTestStatus.TestLog += result第一調整点 && result第二調整点 ? "---PASS\r\n" : "---FAIL\r\n";
                HIOKI7012.StopSource();
                General.PowerSupply(false);

                switch (mode)
                {
                case MODE.V_1:
                    State.VmTestResults.V1_1      = Data第一調整点 + "h";
                    State.VmTestResults.V1_2      = Data第二調整点 + "h";
                    State.VmTestResults.V1_1RE    = Data第一調整点再 + "h";
                    State.VmTestResults.V1_2RE    = Data第二調整点再 + "h";
                    State.VmTestResults.ColV1_1   = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV1_2   = result第二調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV1_1RE = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV1_2RE = result第二調整点 ? OffBrush : NgBrush;
                    break;

                case MODE.V_2:
                    State.VmTestResults.V2_1      = Data第一調整点 + "h";
                    State.VmTestResults.V2_2      = Data第二調整点 + "h";
                    State.VmTestResults.V2_1RE    = Data第一調整点再 + "h";
                    State.VmTestResults.V2_2RE    = Data第二調整点再 + "h";
                    State.VmTestResults.ColV2_1   = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV2_2   = result第二調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV2_1RE = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV2_2RE = result第二調整点 ? OffBrush : NgBrush;
                    break;

                case MODE.V_3:
                    State.VmTestResults.V3_1      = Data第一調整点 + "h";
                    State.VmTestResults.V3_2      = Data第二調整点 + "h";
                    State.VmTestResults.V3_1RE    = Data第一調整点再 + "h";
                    State.VmTestResults.V3_2RE    = Data第二調整点再 + "h";
                    State.VmTestResults.ColV3_1   = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV3_2   = result第二調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV3_1RE = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV3_2RE = result第二調整点 ? OffBrush : NgBrush;
                    break;

                case MODE.V_4:
                    State.VmTestResults.V4_1      = Data第一調整点 + "h";
                    State.VmTestResults.V4_2      = Data第二調整点 + "h";
                    State.VmTestResults.V4_1RE    = Data第一調整点再 + "h";
                    State.VmTestResults.V4_2RE    = Data第二調整点再 + "h";
                    State.VmTestResults.ColV4_1   = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV4_2   = result第二調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV4_1RE = result第一調整点 ? OffBrush : NgBrush;
                    State.VmTestResults.ColV4_2RE = result第二調整点 ? OffBrush : NgBrush;
                    break;
                }
            }
        }
示例#8
0
 public string getCurrentMode()
 {
     return(currentMode.ToString());
 }
示例#9
0
        public static void DRAW_PANEL()
        {
            EditorGUILayout.BeginHorizontal();
            GUILayout.Space(10);
            EditorGUILayout.BeginVertical();
            GUILayout.Space(5);

            Color editorGUIback = new Color(.76f, .76f, .76f);

            if (KP_Style.selection_Style == null)
            {
                KP_Style.Selection_Style();
            }
            // if (selection == null) selection = kSelect.OBJECT;
            //Mesh _selectMesh = kSelect.MESH;
            //MODE modeTemp = _editorMode;
            GUI.enabled = (selection != null);
            //-------------------------------------------------------------------
            //  SELECTION
            float bw = 50,
                  bh = 30;

            _F_selection = EditorGUILayout.Foldout(_F_selection, "Selection " + E_MODE.ToString());// + ((_selection != null) ? "[ " + _selection.name + " ]" : ""));
            if (_F_selection)
            {
                bool pressed = false;
                EditorGUILayout.BeginVertical();
                GUILayout.Space(2);
                GUILayout.BeginHorizontal();
                GUI.color = (E_MODE == MODE.Point) ? Color.yellow : editorGUIback;
                if (GUILayout.Button(new GUIContent(kLibary.LoadBitmap("points", 25, 25)), KP_Style.selection_Style, GUILayout.Width(bw), GUILayout.Height(bh)))
                {
                    E_MODE  = (E_MODE == MODE.Point) ? MODE.None : MODE.Point;
                    pressed = true;
                }
                GUI.color = Color.white;
                GUI.color = (E_MODE == MODE.Edge) ? Color.yellow : editorGUIback;
                if (GUILayout.Button(new GUIContent(kLibary.LoadBitmap("edge", 25, 25)), KP_Style.selection_Style, GUILayout.Width(bw), GUILayout.Height(bh)))
                {
                    E_MODE  = (E_MODE == MODE.Edge) ? MODE.None : MODE.Edge;
                    pressed = true;
                }
                GUI.color = Color.white;
                GUI.color = (E_MODE == MODE.Triangle) ? Color.yellow : editorGUIback;
                if (GUILayout.Button(new GUIContent(kLibary.LoadBitmap("tri", 25, 25)), KP_Style.selection_Style, GUILayout.Width(bw), GUILayout.Height(bh)))
                {
                    E_MODE  = (E_MODE == MODE.Triangle) ? MODE.None : MODE.Triangle;
                    pressed = true;
                }
                GUI.color = Color.white;
                GUI.color = (E_MODE == MODE.Quad) ? Color.yellow : editorGUIback;
                if (GUILayout.Button(new GUIContent(kLibary.LoadBitmap("quad", 25, 25)), KP_Style.selection_Style, GUILayout.Width(bw), GUILayout.Height(bh)))
                {
                    E_MODE  = (E_MODE == MODE.Quad) ? MODE.None : MODE.Quad;
                    pressed = true;
                }
                GUI.color = Color.white;
                GUI.color = (E_MODE == MODE.All) ? Color.yellow : editorGUIback;
                if (GUILayout.Button(new GUIContent(kLibary.LoadBitmap("sub", 25, 25)), KP_Style.selection_Style, GUILayout.Width(bw), GUILayout.Height(bh)))
                {
                    E_MODE  = (E_MODE == MODE.All) ? MODE.None : MODE.All;
                    pressed = true;
                }
                GUI.color = Color.white;
                GUILayout.EndHorizontal();
                EditorGUILayout.EndVertical();
                if (pressed)
                {
                    // if (_selection != null )
                    // {
                    selection = kSelect.OBJECT;
                    FREEZE    = (E_MODE != MODE.None && selection != null) ? true : false;

                    if (E_MODE != MODE.None)
                    {
                        selection.hideFlags |= HideFlags.NotEditable;
                        kPoly2Tool.SceneEvent(true);
                        _selectMesh = kSelect.MESH;
                    }
                    else
                    {
                        selection.hideFlags = 0;
                        kPoly2Tool.SceneEvent(false);
                        _selectMesh = null;
                    }
                    curPointIndex.Clear();
                    TOOL_INDEX = -1;
                    // if (toolVerts.Count > 0)
                    //       toolVerts.Clear();
                    //  }
                    SceneView.currentDrawingSceneView.Repaint();
                }

                //EditorGUILayout.BeginHorizontal();
                //EditorGUILayout.PrefixLabel("" + _editorMode.ToString());
                // EditorGUILayout.LabelField(" " + (_editorMode != MODE.None && curPointIndex.Count > 0 ? curPointIndex[0] + " " : ""), GUILayout.ExpandWidth(true));
                //EditorGUILayout.EndHorizontal();
            }
            GUI.enabled = (E_MODE != MODE.None);
            //-------------------------------------------------------------------
            //  VERTS
            _F_vertices = EditorGUILayout.Foldout(_F_vertices, "Edit Vertices");
            if (_F_vertices)
            {
                GUILayout.BeginHorizontal();
                if (GUILayout.Button(new GUIContent("Remove"), EditorStyles.toolbarButton))
                {
                    VerticesRemover();
                }
                if (GUILayout.Button(new GUIContent("Break"), EditorStyles.toolbarButton))
                {
                    kPoly.VerticesBreak(_selectMesh, curPointIndex.ToArray());
                }
                if (GUILayout.Button(new GUIContent("Turn"), EditorStyles.toolbarButton))
                {
                    kPoly.TriangleTurn(_selectMesh, curPointIndex);
                }
                //GUILayout.Space(10);
                GUILayout.EndHorizontal();

                GUILayout.BeginHorizontal();
                GUILayout.Button(new GUIContent("Extrude"), EditorStyles.toolbarButton);
                GUILayout.Button(new GUIContent("P"), EditorStyles.toolbarButton, GUILayout.Width(25));
                GUILayout.Space(5);
                if (GUILayout.Button(new GUIContent("Weld"), EditorStyles.toolbarButton))
                {
                    TOOL_INDEX = 1;

                    ModifiVerticies_points(true);

                    TOOL_INDEX = -1;
                }
                GUI.color = (TOOL_INDEX == 1) ? new Color(0, .5f, 1, .7f) : Color.white;
                if (GUILayout.Button(new GUIContent("P"), EditorStyles.toolbarButton, GUILayout.Width(25)))
                {
                    if (TOOL_INDEX == -1)
                    {
                        TOOL_INDEX = 1;
                    }
                    else
                    {
                        TOOL_INDEX = -1;
                    }

                    SceneView.currentDrawingSceneView.Repaint();
                }
                GUI.color = Color.white;
                if (E_MODE == MODE.Edge)
                {
                    if (GUILayout.Button(new GUIContent("Connect"), EditorStyles.toolbarButton))
                    {
                        kPoly.EdgeConnect_Preview(_selectMesh, curPointIndex, edges, SGUIelements._connex, SGUIelements._conPad, true);
                        //_selectMesh, curPointIndex, edges, SGUIelements._connex, SGUIelements._conPad, true);
                        // ModifiVerticies_edgeConnect();
                    }
                    GUI.color = (TOOL_INDEX == 2) ? new Color(0, .5f, 1, .7f) : Color.white;
                    if (GUILayout.Button(new GUIContent("P"), EditorStyles.toolbarButton, GUILayout.Width(25)))
                    {
                        if (TOOL_INDEX == -1)
                        {
                            TOOL_INDEX = 2;
                        }
                        else
                        {
                            TOOL_INDEX = -1;
                        }

                        SceneView.currentDrawingSceneView.Repaint();
                    }
                    GUI.color = Color.white;
                }
                // GUILayout.Space(10);
                GUILayout.EndHorizontal();
            }
            //-------------------------------------------------------------------
            //  GEOMETRY
            _F_geometry = EditorGUILayout.Foldout(_F_geometry, "Edit Geometry");
            if (_F_geometry)
            {
                //EditorGUILayout.Toggle(false, "Preserve UVs");
                GUILayout.BeginHorizontal();

                if (GUILayout.Button(new GUIContent("Make Planar"), EditorStyles.toolbarButton))
                {
                    if (selection != null && _selectMesh != null)
                    {
                        kPoly.VerticesFlatten(_selectMesh, curPointIndex, E_MODE, P_HELPER, edges, faces);
                        curPointIndex.Clear();
                    }
                }
                GUILayout.Space(5);
                GUI.color = Color.white;
                GUI.color = (P_HELPER.x_Axis) ? Color.grey : Color.white;
                if (GUILayout.Button(new GUIContent("X"), EditorStyles.toolbarButton))
                {
                    P_HELPER.x_Axis = !P_HELPER.x_Axis;
                }
                GUI.color = Color.white;
                GUI.color = (P_HELPER.y_Axis) ? Color.grey : Color.white;
                if (GUILayout.Button(new GUIContent("Y"), EditorStyles.toolbarButton))
                {
                    P_HELPER.y_Axis = !P_HELPER.y_Axis;
                }
                GUI.color = Color.white;
                GUI.color = (P_HELPER.z_Axis) ? Color.grey : Color.white;
                if (GUILayout.Button(new GUIContent("Z"), EditorStyles.toolbarButton))
                {
                    P_HELPER.z_Axis = !P_HELPER.z_Axis;
                }
                GUI.color = Color.white;

                GUILayout.EndHorizontal();
            }
            //   EditorGUILayout.LabelField("Active Object : " + _selection.name + " Mesh : " + _selectMesh.name);

            GUILayout.BeginHorizontal();
            if (GUILayout.Button(new GUIContent("Clear Verts"), EditorStyles.toolbarButton))
            {
                _verts = null;
            }
            //      if (GUILayout.Button(new GUIContent("Clear Tris"), EditorStyles.toolbarButton)) tris = null;
            if (GUILayout.Button(new GUIContent("Clear Edges"), EditorStyles.toolbarButton))
            {
                edges = null;
            }
            if (GUILayout.Button(new GUIContent("Clear Faces"), EditorStyles.toolbarButton))
            {
                faces = null;
            }
            GUILayout.EndHorizontal();
            EditorGUILayout.EndVertical();
            GUILayout.Space(10);
            EditorGUILayout.EndHorizontal();
        }
示例#10
0
            /// <summary>
            /// Потоковый метод опроса БД для выборки лог-сообщений
            /// </summary>
            /// <param name="data">Объект с данными для разборки методом</param>
            protected override void thread_Proc(object data)
            {
                DataTable tableReceived;
                DateTime  dateStart;
                MODE      mode = MODE.UNKNOWN;

                tableReceived = ((PARAM_THREAD_PROC)data).Table;
                mode          = ((PARAM_THREAD_PROC)data).Mode;

                switch (mode)
                {
                case MODE.LIST_DATE:
                    //перебор значений и добовление их в строку
                    for (int i = 0; i < tableReceived.Rows.Count; i++)
                    {
                        dateStart = (DateTime)tableReceived.Rows [i] ["DATE_TIME"];
                        //m_tableLog.Rows.Add (new object [] { dateStart, s_ID_LOGMESSAGES [(int)INDEX_LOGMSG.START], ProgramBase.MessageWellcome });
                        m_listDate.Add(dateStart);
                    }
                    break;

                case MODE.MESSAGE:
                    m_tableLog = tableReceived.Copy();
                    break;

                default:
                    throw new InvalidOperationException($"PanelAnalyzer_DB.LogParse_DB::thread_Proc () - неизвестный режим <{mode.ToString()}>...");
                    break;
                }

                //запрос разбора строки с лог-сообщениями
                base.thread_Proc(data);
            }
示例#11
0
 /// <summary>
 /// Output the current settings to string.
 /// </summary>
 /// <returns>A string representation of the options is output.</returns>
 public override string ToString()
 {
     return("Command Line: -iter:" + m_nIterations.ToString() + " -batch:" + m_nBatch.ToString() + " -steps:" + m_nTimeSteps.ToString() + " -hidden:" + m_nHidden.ToString() + " -dropout:" + m_dfDropout.ToString() + " -lr:" + m_dfLearningRate.ToString() + " -type:" + m_strType + " -newwts:" + m_nNewWeights.ToString() + " -mode:" + m_mode.ToString());
 }
示例#12
0
        public static async Task <bool> Check60(MODE mode)
        {
            bool result1        = false;
            bool result1_temp下限 = false;
            bool result1_temp上限 = false;

            bool result2        = false;
            bool result2_temp下限 = false;
            bool result2_temp上限 = false;

            string Data1_temp = "";
            string Data2_temp = "";

            const int SampleCnt = 3;

            var List1 = new List <double>();
            var List2 = new List <double>();

            State.VmTestStatus.TestLog += $" {mode.ToString()} 60℃確認";

            //ローカル関数の定義■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            void GetData()
            {
                Target.SendData("TEMP");

                while (true)//取り込んだ通信データが規定行数(サンプリング数)になるまで待つ
                {
                    if (Flags.ClickStopButton)
                    {
                        return;
                    }
                    if (General.CountNewline() == SampleCnt + 2)
                    {
                        break;
                    }
                }
                Target.Escape();
                int offset1;
                int offset2;

                if (mode == MODE.PV12)
                {
                    offset1 = 1; offset2 = 2;
                }
                else
                {
                    offset1 = 3; offset2 = 4;
                }

                var log    = VmComm.RX;
                int 検索開始位置 = 0;

                foreach (var i in Enumerable.Range(0, SampleCnt))
                {
                    int FoundIndex = log.IndexOf("TEMP,", 検索開始位置);
                    int 改行位置       = log.IndexOf("\r\n", FoundIndex);
                    var 取り出し1行     = log.Substring(FoundIndex, 改行位置 - FoundIndex);
                    var dataList   = 取り出し1行.Split(',');

                    List1.Add(Double.Parse(dataList[offset1]));
                    List2.Add(Double.Parse(dataList[offset2]));
                    検索開始位置 = FoundIndex + 1;
                }
            };

            //■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

            try
            {
                await Task.Delay(500);

                //電源ONする処理
                General.PowerSupply(true);
                if (!General.CheckDemo表示())
                {
                    return(false);
                }
                General.PlaySound(General.sound123_24);
                var dialog = new DialogPic("ダイヤル抵抗器を123.24オームに設定してください", DialogPic.NAME.その他, soundSw: false);
                dialog.ShowDialog();
                await Task.Delay(1500);

                GetData();


                General.PowerSupply(false);

                result1_temp下限 = List1.All(data => data >= State.TestSpec.Temp60_Min);
                result1_temp上限 = List1.All(data => data <= State.TestSpec.Temp60_Max);
                result1        = result1_temp下限 && result1_temp上限;

                result2_temp下限 = List2.All(data => data >= State.TestSpec.Temp60_Min);
                result2_temp上限 = List2.All(data => data <= State.TestSpec.Temp60_Max);
                result2        = result2_temp下限 && result2_temp上限;


                List1.Sort();
                if (result1)
                {
                    Data1_temp = List1[SampleCnt / 2].ToString("F2") + "℃";//中央値
                }
                else
                {
                    if (!result1_temp下限)
                    {
                        Data1_temp = List1[0].ToString("F2") + "℃";//Min
                    }
                    else
                    {
                        Data1_temp = List1[SampleCnt - 1].ToString("F2") + "℃";//Max
                    }
                }

                List2.Sort();
                if (result2)
                {
                    Data2_temp = List2[SampleCnt / 2].ToString("F2") + "℃";//中央値
                }
                else
                {
                    if (!result2_temp下限)
                    {
                        Data2_temp = List2[0].ToString("F2") + "℃";//Min
                    }
                    else
                    {
                        Data2_temp = List2[SampleCnt - 1].ToString("F2") + "℃";//Max
                    }
                }

                return(result1 && result2);
            }
            catch
            {
                return(false);
            }
            finally
            {
                State.VmTestStatus.TestLog += result1 && result2? "---PASS\r\n" :"---FAIL\r\n";
                General.PowerSupply(false);

                if (mode == MODE.PV12)
                {
                    VmTestResults.PV1_123_24    = Data1_temp;
                    VmTestResults.PV2_123_24    = Data2_temp;
                    VmTestResults.ColPV1_123_24 = result1 ? OffBrush : NgBrush;
                    VmTestResults.ColPV2_123_24 = result2 ? OffBrush : NgBrush;
                }
                else
                {
                    VmTestResults.PV3_123_24    = Data1_temp;
                    VmTestResults.PV4_123_24    = Data2_temp;
                    VmTestResults.ColPV3_123_24 = result1 ? OffBrush : NgBrush;
                    VmTestResults.ColPV4_123_24 = result2 ? OffBrush : NgBrush;
                }
            }
        }
示例#13
0
        public static async Task <bool> SetPT100(MODE mode, POINT point)
        {
            var result1  = false;
            var result2  = false;
            var strData1 = "";
            var strData2 = "";

            var mess = "";
            var max  = 0.0;
            var min  = 0.0;

            var cmd1 = "";
            var cmd2 = "";

            State.VmTestStatus.TestLog += $" {mode.ToString()} {point.ToString()}調整";

            //ローカル関数の定義■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            string GetData(string command)
            {
                General.ClearCommlog();
                Target.SendData(command);

                while (true)//取り込んだ通信データが規定行数(サンプリング数)になるまで待つ
                {
                    if (Flags.ClickStopButton)
                    {
                        return(null);
                    }
                    if (General.CountNewline() == 2)
                    {
                        break;
                    }
                }
                Target.Escape();
                Sleep(1000);
                var log        = State.VmComm.RX;
                int FoundIndex = log.IndexOf(command + ",");
                int 改行位置       = log.IndexOf("\r\n", FoundIndex);
                var 取り出し1行     = log.Substring(FoundIndex, 改行位置 - FoundIndex);
                var dataList   = 取り出し1行.Split(',');

                return(dataList[2].Substring(1));//一文字目がスペースなので削除
            };
            //■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

            try
            {
                await Task.Delay(500);

                if (!await CheckComm())
                {
                    return(false);
                }

                switch (point)
                {
                case POINT.FIRST:
                    max  = State.TestSpec.PV第一Max;
                    min  = State.TestSpec.PV第一Min;
                    mess = "ダイヤル抵抗器を108.96オームに設定してください";
                    cmd1 = mode == MODE.PV12 ? "PV11" : "PV31";
                    cmd2 = mode == MODE.PV12 ? "PV21" : "PV41";
                    General.PlaySound(General.sound108_96);
                    break;

                case POINT.SECOND:
                    max  = State.TestSpec.PV第二Max;
                    min  = State.TestSpec.PV第二Min;
                    mess = "ダイヤル抵抗器を149.83オームに設定してください";
                    cmd1 = mode == MODE.PV12 ? "PV12" : "PV32";
                    cmd2 = mode == MODE.PV12 ? "PV22" : "PV42";
                    General.PlaySound(General.sound149_83);
                    break;

                case POINT.THIRD:
                    max  = State.TestSpec.PV第三Max;
                    min  = State.TestSpec.PV第三Min;
                    mess = "ダイヤル抵抗器を183.19オームに設定してください";
                    cmd1 = mode == MODE.PV12 ? "PV13" : "PV33";
                    cmd2 = mode == MODE.PV12 ? "PV23" : "PV43";
                    General.PlaySound(General.sound183_19);
                    break;
                }

                var dialog = new DialogPic(mess, DialogPic.NAME.その他, soundSw: false);
                dialog.ShowDialog();
                await Task.Delay(4000);

                await Task.Run(() =>
                {
                    strData1 = GetData(cmd1);
                    strData2 = GetData(cmd2);
                });

                if (strData1 == null || strData2 == null)
                {
                    return(false);
                }

                //第一調整点の調整値が適正な範囲内にあるかチェック
                int Data1 = Convert.ToInt32(strData1, 16);
                int Data2 = Convert.ToInt32(strData2, 16);

                result1 = min < Data1 && Data1 < max;
                result2 = min < Data2 && Data2 < max;

                return(result1 && result2);
            }
            catch
            {
                return(false);
            }
            finally
            {
                State.VmTestStatus.TestLog += result1 && result2? "---PASS\r\n" :"---FAIL\r\n";
                General.PowerSupply(false);

                if (mode == MODE.PV12)
                {
                    switch (point)
                    {
                    case POINT.FIRST:
                        VmTestResults.PV1_1    = strData1 + "h";
                        VmTestResults.PV2_1    = strData2 + "h";
                        VmTestResults.ColPV1_1 = result1 ? OffBrush : NgBrush;
                        VmTestResults.ColPV2_1 = result2 ? OffBrush : NgBrush;
                        break;

                    case POINT.SECOND:
                        VmTestResults.PV1_2    = strData1 + "h";
                        VmTestResults.PV2_2    = strData2 + "h";
                        VmTestResults.ColPV1_2 = result1 ? OffBrush : NgBrush;
                        VmTestResults.ColPV2_2 = result2 ? OffBrush : NgBrush;
                        break;

                    case POINT.THIRD:
                        VmTestResults.PV1_3    = strData1 + "h";
                        VmTestResults.PV2_3    = strData2 + "h";
                        VmTestResults.ColPV1_3 = result1 ? OffBrush : NgBrush;
                        VmTestResults.ColPV2_3 = result2 ? OffBrush : NgBrush;
                        break;
                    }
                }
                else
                {
                    switch (point)
                    {
                    case POINT.FIRST:
                        VmTestResults.PV3_1    = strData1 + "h";
                        VmTestResults.PV4_1    = strData2 + "h";
                        VmTestResults.ColPV3_1 = result1 ? OffBrush : NgBrush;
                        VmTestResults.ColPV4_1 = result2 ? OffBrush : NgBrush;
                        break;

                    case POINT.SECOND:
                        VmTestResults.PV3_2    = strData1 + "h";
                        VmTestResults.PV4_2    = strData2 + "h";
                        VmTestResults.ColPV3_2 = result1 ? OffBrush : NgBrush;
                        VmTestResults.ColPV4_2 = result2 ? OffBrush : NgBrush;
                        break;

                    case POINT.THIRD:
                        VmTestResults.PV3_3    = strData1 + "h";
                        VmTestResults.PV4_3    = strData2 + "h";
                        VmTestResults.ColPV3_3 = result1 ? OffBrush : NgBrush;
                        VmTestResults.ColPV4_3 = result2 ? OffBrush : NgBrush;
                        break;
                    }
                }
            }
        }